time="2024-09-21T15:03:13Z" level=warning msg="/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/integration-test/docker-compose.yaml: `version` is obsolete" Container integration-test-authorization-1 Creating Container integration-test-gateway-1 Creating Container integration-test-federation-1 Creating Container integration-test-device-1 Creating Container integration-test-authentication-1 Creating Container integration-test-experiment-1 Creating Container integration-test-forwarding-1 Creating Container integration-test-gateway-1 Created Container integration-test-forwarding-1 Created Container integration-test-device-1 Created Container integration-test-federation-1 Created Container integration-test-experiment-1 Created Container integration-test-authentication-1 Created Container integration-test-authorization-1 Created Attaching to authentication-1, authorization-1, device-1, experiment-1, federation-1, forwarding-1, gateway-1 gateway-1 | /docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration gateway-1 | /docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/ gateway-1 | /docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh gateway-1 | 10-listen-on-ipv6-by-default.sh: info: Getting the checksum of /etc/nginx/conf.d/default.conf gateway-1 | 10-listen-on-ipv6-by-default.sh: info: Enabled listen on IPv6 in /etc/nginx/conf.d/default.conf gateway-1 | /docker-entrypoint.sh: Sourcing /docker-entrypoint.d/15-local-resolvers.envsh gateway-1 | /docker-entrypoint.sh: Launching /docker-entrypoint.d/20-create_config.sh gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/authorization_service.conf to /etc/nginx/authorization_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/nginx.conf to /etc/nginx/nginx.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/device_service.conf to /etc/nginx/device_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/experiment_service.conf to /etc/nginx/experiment_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/auth_service.conf to /etc/nginx/auth_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/federation_service.conf to /etc/nginx/federation_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/api_json_errors.conf to /etc/nginx/api_json_errors.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/forwarding_service.conf to /etc/nginx/forwarding_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/api_backends.conf to /etc/nginx/api_backends.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/api_gateway.conf to /etc/nginx/api_gateway.conf gateway-1 | /docker-entrypoint.sh: Launching /docker-entrypoint.d/30-tune-worker-processes.sh gateway-1 | /docker-entrypoint.sh: Configuration complete; ready for start up forwarding-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} forwarding-1 | {"level":"info","message":"Forwarding Service started successfully"} authorization-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} federation-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} authentication-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} federation-1 | {"level":"info","message":"Federation Service started successfully"} authorization-1 | {"addrs":["localhost:3011"],"diagnostic-addrs":[],"level":"info","msg":"Initializing server.","subsystem":"opa","time":"2024-09-21T15:03:49Z"} authentication-1 | {"level":"info","message":"Authentication Service started successfully"} device-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} experiment-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} device-1 | {"level":"info","message":"Device Service started successfully"} authorization-1 | {"client_addr":"127.0.0.1:49766","level":"info","msg":"Received request.","req_id":1,"req_method":"GET","req_path":"/","subsystem":"opa","time":"2024-09-21T15:03:50Z"} authorization-1 | {"client_addr":"127.0.0.1:49766","level":"info","msg":"Sent response.","req_id":1,"req_method":"GET","req_path":"/","resp_bytes":1424,"resp_duration":0.237306,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:03:50Z"} experiment-1 | {"level":"info","message":"Experiment Service started successfully"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"๐Ÿงช experimental features enabled: []","subsystem":"openfga","timestamp":1726931030.522069} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"using 'memory' storage engine","subsystem":"openfga","timestamp":1726931030.5221522} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"warn","message":"authentication is disabled","subsystem":"openfga","timestamp":1726931030.5221796} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"warn","message":"grpc TLS is disabled, serving connections using insecure plaintext","subsystem":"openfga","timestamp":1726931030.5222054} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"๐Ÿ“ˆ starting metrics server on '0.0.0.0:2112'","subsystem":"openfga","timestamp":1726931030.5222452} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","date":"2023-06-30T20:11:20Z","go-version":"go1.20.5","level":"info","message":"๐Ÿš€ starting openfga service...","subsystem":"openfga","timestamp":1726931030.5225444,"version":"v1.2.0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"grpc server listening on 'localhost:3012'...","subsystem":"openfga","timestamp":1726931030.5232472} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"HTTP server listening on 'localhost:3013'...","subsystem":"openfga","timestamp":1726931030.5242538} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"CreateStore","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"name":"crosslab"},"raw_response":{"created_at":"2024-09-21T15:03:50.545075100Z","id":"01J8AHRMGHV6NRN7XCT86G5Q81","name":"crosslab","updated_at":"2024-09-21T15:03:50.545075100Z"},"request_id":"bcdd2370-8ac1-4e02-96d4-aefee937f388","subsystem":"openfga","timestamp":1726931030.5451589} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"WriteAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"schema_version":"1.1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]},"raw_response":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V"},"request_id":"1172cf84-abba-4566-bc32-65f72d5dfd61","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931030.6006453} authorization-1 | {"client_addr":"127.0.0.1:49766","level":"info","msg":"Received request.","req_id":2,"req_method":"PUT","req_path":"/v1/data/jwt_secret","subsystem":"opa","time":"2024-09-21T15:03:50Z"} authorization-1 | {"client_addr":"127.0.0.1:49766","level":"info","msg":"Sent response.","req_id":2,"req_method":"PUT","req_path":"/v1/data/jwt_secret","resp_bytes":0,"resp_duration":0.211255,"resp_status":204,"subsystem":"opa","time":"2024-09-21T15:03:50Z"} authorization-1 | {"level":"info","message":"Authorization Service started successfully"} authorization-1 | {"current_version":"0.54.0","download_opa":"https://openpolicyagent.org/downloads/v0.68.0/opa_linux_amd64","latest_version":"0.68.0","level":"info","msg":"OPA is out of date.","release_notes":"https://github.com/open-policy-agent/opa/releases/tag/v0.68.0","subsystem":"opa","time":"2024-09-21T15:03:50Z"} gateway-1 | {"time_local":"21/Sep/2024:15:03:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /auth/status HTTP/1.1","status": "200","body_bytes_sent":"0","request_time":"0.027","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"a6ae36353ee820b9d75cbe8c9b6516c1"} authentication-1 | {"level":"info","message":"HEAD /auth/status 200 19ms","method":"HEAD","requestID":"a6ae36353ee820b9d75cbe8c9b6516c1","responseTime":19,"status":200,"url":"/auth/status"} gateway-1 | {"time_local":"21/Sep/2024:15:03:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /device/status HTTP/1.1","status": "200","body_bytes_sent":"0","request_time":"0.017","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"9ac733dd9f7a1b795fa7deacb0da165d"} device-1 | {"level":"info","message":"HEAD /device/status 200 11ms","method":"HEAD","requestID":"b98d00c0-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/device/status"} gateway-1 | {"time_local":"21/Sep/2024:15:03:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /authorization/status HTTP/1.1","status": "200","body_bytes_sent":"0","request_time":"0.014","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"55d30f13e4740279c1c28358d5c20474"} authorization-1 | {"level":"info","message":"HEAD /authorization/status 200 9ms","method":"HEAD","requestID":"55d30f13e4740279c1c28358d5c20474","responseTime":9,"status":200,"url":"/authorization/status"} gateway-1 | {"time_local":"21/Sep/2024:15:03:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /federation/status HTTP/1.1","status": "200","body_bytes_sent":"0","request_time":"0.014","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"bc94c95fa6cf4bbb4ae483d6cad08840"} federation-1 | {"level":"info","message":"HEAD /federation/status 200 9ms","method":"HEAD","requestID":"b993b780-782a-11ef-a84e-41a07153f764","responseTime":9,"status":200,"url":"/federation/status"} gateway-1 | {"time_local":"21/Sep/2024:15:03:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /experiment/status HTTP/1.1","status": "200","body_bytes_sent":"0","request_time":"0.016","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"c12035c74fd8695f2d8ef4c2e7d49774"} experiment-1 | {"level":"info","message":"HEAD /experiment/status 200 11ms","method":"HEAD","requestID":"b99739f0-782a-11ef-961c-c9bde663377f","responseTime":11,"status":200,"url":"/experiment/status"} gateway-1 | {"time_local":"21/Sep/2024:15:03:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /forwarding/status HTTP/1.1","status": "200","body_bytes_sent":"0","request_time":"0.015","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"91fa9af6de4b7251e1a594faa01ce014"} forwarding-1 | {"level":"info","message":"HEAD /forwarding/status 200 9ms","method":"HEAD","requestID":"b99ae370-782a-11ef-938d-0b888d58857d","responseTime":9,"status":200,"url":"/forwarding/status"} gateway-1 | {"time_local":"21/Sep/2024:15:03:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /login HTTP/1.1","status": "201","body_bytes_sent":"88","request_time":"0.172","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bb3524eb959b83f2194733026b5d3840"} authentication-1 | {"level":"info","message":"POST /login 201 149ms","method":"POST","requestID":"bb3524eb959b83f2194733026b5d3840","responseTime":149,"status":201,"url":"/login"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTAzOX0.Pp9S7BIOruxiR2NIUEBIbkVUS8avEjaFWyQs4hAWlWc","level":"info","message":"auth send jwt","requestID":"548dd1e7b43b943bbb967a5fad4088a8"} authentication-1 | {"level":"info","message":"GET /auth 200 23ms","method":"GET","requestID":"548dd1e7b43b943bbb967a5fad4088a8","responseTime":23,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"548dd1e7b43b943bbb967a5fad4088a8"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":3,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:03:59Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":3,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.348655,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:03:59Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"548dd1e7b43b943bbb967a5fad4088a8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931039,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTAzOX0.Pp9S7BIOruxiR2NIUEBIbkVUS8avEjaFWyQs4hAWlWc"} authorization-1 | {"level":"info","message":"POST /authorize 200 25ms","method":"POST","requestID":"548dd1e7b43b943bbb967a5fad4088a8","responseTime":25,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e4cbf10-cdc0-4304-b140-cb8b06574d64","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"61688b20-9b2d-47bf-9ec6-daa95ce6e5a4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931039.9959633} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"548dd1e7b43b943bbb967a5fad4088a8","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ae399ad3-c448-48cf-b77a-4664f6e56483","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931040.0116704} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"548dd1e7b43b943bbb967a5fad4088a8","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e4cbf10-cdc0-4304-b140-cb8b06574d64","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"f5a67322-a5a9-4de7-bd32-0519e115801e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931040.0286167} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"00bd558a-4e54-4631-ab66-556c2765c263","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931040.0291376} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"548dd1e7b43b943bbb967a5fad4088a8","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e4cbf10-cdc0-4304-b140-cb8b06574d64","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e4cbf10-cdc0-4304-b140-cb8b06574d64","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:00.028594256Z"}]},"request_id":"238f917d-e35a-4b2b-b17c-8864daa4117e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931040.037322} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"548dd1e7b43b943bbb967a5fad4088a8","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"548dd1e7b43b943bbb967a5fad4088a8"} gateway-1 | {"time_local":"21/Sep/2024:15:04:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.258","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"548dd1e7b43b943bbb967a5fad4088a8"} device-1 | {"level":"info","message":"POST /devices? 201 217ms","method":"POST","requestID":"548dd1e7b43b943bbb967a5fad4088a8","responseTime":217,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0MH0.CRsKRbSDTWVVpm52Yitgi3UIZKew1K9J4sLyImJyIik","level":"info","message":"auth send jwt","requestID":"f9a3489e7a91940121c95060878c5be3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f9a3489e7a91940121c95060878c5be3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f9a3489e7a91940121c95060878c5be3"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":4,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:00Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":4,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.756358,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f9a3489e7a91940121c95060878c5be3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931040,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0MH0.CRsKRbSDTWVVpm52Yitgi3UIZKew1K9J4sLyImJyIik"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f9a3489e7a91940121c95060878c5be3","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc173fcc2-3fea-4b53-88b5-4d9079b0fe2b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"52eb3490-f6a0-452c-930f-6d787cf29b7d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931040.0986452} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"f9a3489e7a91940121c95060878c5be3","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"da2b9bb2-d927-4164-a3a6-0b9d3261ffe1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931040.1117053} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"f9a3489e7a91940121c95060878c5be3","responseTime":10,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc173fcc2-3fea-4b53-88b5-4d9079b0fe2b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"07cfa51b-caf7-4c80-bf49-df5e74410cdb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931040.128892} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"312ac3a4-73ab-4f8a-b289-346b1e076989","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931040.129044} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"f9a3489e7a91940121c95060878c5be3","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc173fcc2-3fea-4b53-88b5-4d9079b0fe2b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc173fcc2-3fea-4b53-88b5-4d9079b0fe2b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:00.128878145Z"}]},"request_id":"c0b235f1-c7f0-4ec9-be12-46ff1eac6e2e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931040.1413455} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"f9a3489e7a91940121c95060878c5be3","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f9a3489e7a91940121c95060878c5be3"} gateway-1 | {"time_local":"21/Sep/2024:15:04:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.080","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f9a3489e7a91940121c95060878c5be3"} device-1 | {"level":"info","message":"POST /devices? 201 74ms","method":"POST","requestID":"f9a3489e7a91940121c95060878c5be3","responseTime":74,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ee0ad221d2c2f21f46a2d93e16d27538","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ee0ad221d2c2f21f46a2d93e16d27538","responseTime":3,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4964294115eaeb790048068313739e7c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4964294115eaeb790048068313739e7c","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.010","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ee0ad221d2c2f21f46a2d93e16d27538"} device-1 | {"level":"info","message":"OPTIONS /devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b/websocket 200 3ms","method":"OPTIONS","requestID":"ee0ad221d2c2f21f46a2d93e16d27538","responseTime":3,"status":200,"url":"/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:04:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.013","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4964294115eaeb790048068313739e7c"} device-1 | {"level":"info","message":"OPTIONS /devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64/websocket 200 1ms","method":"OPTIONS","requestID":"4964294115eaeb790048068313739e7c","responseTime":1,"status":200,"url":"/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Mn0.-gvb63LSWYq2i5IPiq7Y5ODBZguhcKT-5gNXsCIkgtA","level":"info","message":"auth send jwt","requestID":"4d8f696527be5ec356a01ecc349771c2"} authentication-1 | {"level":"info","message":"GET /auth 200 12ms","method":"GET","requestID":"4d8f696527be5ec356a01ecc349771c2","responseTime":12,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Mn0.-gvb63LSWYq2i5IPiq7Y5ODBZguhcKT-5gNXsCIkgtA","level":"info","message":"auth send jwt","requestID":"98ae81eec6b7c3094c1671d452d55895"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4d8f696527be5ec356a01ecc349771c2"} authentication-1 | {"level":"info","message":"GET /auth 200 12ms","method":"GET","requestID":"98ae81eec6b7c3094c1671d452d55895","responseTime":12,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"98ae81eec6b7c3094c1671d452d55895"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":5,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:02Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":5,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.96392,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:02Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"4d8f696527be5ec356a01ecc349771c2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931042,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Mn0.-gvb63LSWYq2i5IPiq7Y5ODBZguhcKT-5gNXsCIkgtA"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"4d8f696527be5ec356a01ecc349771c2","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51320","level":"info","msg":"Received request.","req_id":6,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:02Z"} authorization-1 | {"client_addr":"127.0.0.1:51320","level":"info","msg":"Sent response.","req_id":6,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.780887,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:02Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"98ae81eec6b7c3094c1671d452d55895","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931042,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Mn0.-gvb63LSWYq2i5IPiq7Y5ODBZguhcKT-5gNXsCIkgtA"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"98ae81eec6b7c3094c1671d452d55895","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"98ae81eec6b7c3094c1671d452d55895"} gateway-1 | {"time_local":"21/Sep/2024:15:04:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.067","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"98ae81eec6b7c3094c1671d452d55895"} device-1 | {"level":"info","message":"POST /devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64/websocket 200 49ms","method":"POST","requestID":"98ae81eec6b7c3094c1671d452d55895","responseTime":49,"status":200,"url":"/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4d8f696527be5ec356a01ecc349771c2"} gateway-1 | {"time_local":"21/Sep/2024:15:04:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.084","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4d8f696527be5ec356a01ecc349771c2"} device-1 | {"level":"info","message":"POST /devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b/websocket 200 69ms","method":"POST","requestID":"4d8f696527be5ec356a01ecc349771c2","responseTime":69,"status":200,"url":"/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e26f4995f925901d96e842689833201b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e26f4995f925901d96e842689833201b","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"88d53e9b77521886ee69255e77a9be5c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} gateway-1 | {"time_local":"21/Sep/2024:15:04:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.006","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e26f4995f925901d96e842689833201b"} device-1 | {"level":"info","message":"OPTIONS /devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b? 200 1ms","method":"OPTIONS","requestID":"e26f4995f925901d96e842689833201b","responseTime":1,"status":200,"url":"/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b?"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"88d53e9b77521886ee69255e77a9be5c","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.009","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"88d53e9b77521886ee69255e77a9be5c"} device-1 | {"level":"info","message":"OPTIONS /devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64? 200 2ms","method":"OPTIONS","requestID":"88d53e9b77521886ee69255e77a9be5c","responseTime":2,"status":200,"url":"/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Mn0.-gvb63LSWYq2i5IPiq7Y5ODBZguhcKT-5gNXsCIkgtA","level":"info","message":"auth send jwt","requestID":"ef6c33a0d2b3d903e3d638e969884939"} authentication-1 | {"level":"info","message":"GET /auth 200 12ms","method":"GET","requestID":"ef6c33a0d2b3d903e3d638e969884939","responseTime":12,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Mn0.-gvb63LSWYq2i5IPiq7Y5ODBZguhcKT-5gNXsCIkgtA","level":"info","message":"auth send jwt","requestID":"e04a075c4d40d69af99f91599b47579c"} authentication-1 | {"level":"info","message":"GET /auth 200 11ms","method":"GET","requestID":"e04a075c4d40d69af99f91599b47579c","responseTime":11,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ef6c33a0d2b3d903e3d638e969884939"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e04a075c4d40d69af99f91599b47579c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":7,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:02Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":7,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.092198,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:02Z"} authorization-1 | {"client_addr":"127.0.0.1:51320","level":"info","msg":"Received request.","req_id":8,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:02Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ef6c33a0d2b3d903e3d638e969884939","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931042,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Mn0.-gvb63LSWYq2i5IPiq7Y5ODBZguhcKT-5gNXsCIkgtA"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"ef6c33a0d2b3d903e3d638e969884939","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51320","level":"info","msg":"Sent response.","req_id":8,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.880642,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:02Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e04a075c4d40d69af99f91599b47579c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931042,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Mn0.-gvb63LSWYq2i5IPiq7Y5ODBZguhcKT-5gNXsCIkgtA"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"e04a075c4d40d69af99f91599b47579c","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc173fcc2-3fea-4b53-88b5-4d9079b0fe2b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc173fcc2-3fea-4b53-88b5-4d9079b0fe2b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:00.128878145Z"}]},"request_id":"bfbf4779-3f80-459d-9077-896974b7fc26","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931042.865499} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"ef6c33a0d2b3d903e3d638e969884939","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e4cbf10-cdc0-4304-b140-cb8b06574d64","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e4cbf10-cdc0-4304-b140-cb8b06574d64","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:00.028594256Z"}]},"request_id":"d9215d03-c64c-46dd-8e9b-90c46fb0f329","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931042.8692358} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"e04a075c4d40d69af99f91599b47579c","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ca906532-95f2-434a-8979-9c1ceb08d0d5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931042.8773649} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"ef6c33a0d2b3d903e3d638e969884939","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bb177411-aa07-413c-b861-559bda6a1596","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931042.8804207} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"e04a075c4d40d69af99f91599b47579c","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e4cbf10-cdc0-4304-b140-cb8b06574d64","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e4cbf10-cdc0-4304-b140-cb8b06574d64","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:00.028594256Z"}]},"request_id":"8224b57c-f2d9-46fe-9843-0dc29b70e557","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931042.884755} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e04a075c4d40d69af99f91599b47579c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e04a075c4d40d69af99f91599b47579c"} gateway-1 | {"time_local":"21/Sep/2024:15:04:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.071","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e04a075c4d40d69af99f91599b47579c"} device-1 | {"level":"info","message":"PATCH /devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64? 200 49ms","method":"PATCH","requestID":"e04a075c4d40d69af99f91599b47579c","responseTime":49,"status":200,"url":"/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc173fcc2-3fea-4b53-88b5-4d9079b0fe2b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc173fcc2-3fea-4b53-88b5-4d9079b0fe2b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:00.128878145Z"}]},"request_id":"3141c5ef-8cb1-4b7f-af33-8d204f6d117b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931042.8990347} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ef6c33a0d2b3d903e3d638e969884939","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ef6c33a0d2b3d903e3d638e969884939"} gateway-1 | {"time_local":"21/Sep/2024:15:04:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.084","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ef6c33a0d2b3d903e3d638e969884939"} device-1 | {"level":"info","message":"PATCH /devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b? 200 70ms","method":"PATCH","requestID":"ef6c33a0d2b3d903e3d638e969884939","responseTime":70,"status":200,"url":"/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Mn0.-gvb63LSWYq2i5IPiq7Y5ODBZguhcKT-5gNXsCIkgtA","level":"info","message":"auth send jwt","requestID":"aed1ae94e4b80ea9484bf7fe50ad4da6"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"aed1ae94e4b80ea9484bf7fe50ad4da6","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aed1ae94e4b80ea9484bf7fe50ad4da6"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":9,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:02Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":9,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.746485,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"aed1ae94e4b80ea9484bf7fe50ad4da6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931042,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Mn0.-gvb63LSWYq2i5IPiq7Y5ODBZguhcKT-5gNXsCIkgtA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"aed1ae94e4b80ea9484bf7fe50ad4da6","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e4cbf10-cdc0-4304-b140-cb8b06574d64","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e4cbf10-cdc0-4304-b140-cb8b06574d64","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:00.028594256Z"}]},"request_id":"1fad8ef6-dfbc-4284-b9c6-9883d22e418c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931042.932937} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"aed1ae94e4b80ea9484bf7fe50ad4da6","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aed1ae94e4b80ea9484bf7fe50ad4da6"} gateway-1 | {"time_local":"21/Sep/2024:15:04:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.034","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"aed1ae94e4b80ea9484bf7fe50ad4da6"} device-1 | {"level":"info","message":"GET /devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64? 200 26ms","method":"GET","requestID":"aed1ae94e4b80ea9484bf7fe50ad4da6","responseTime":26,"status":200,"url":"/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Mn0.-gvb63LSWYq2i5IPiq7Y5ODBZguhcKT-5gNXsCIkgtA","level":"info","message":"auth send jwt","requestID":"0287a346d3bfab234046928408d53853"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"0287a346d3bfab234046928408d53853","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0287a346d3bfab234046928408d53853"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":10,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:02Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":10,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.957355,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0287a346d3bfab234046928408d53853","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931042,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Mn0.-gvb63LSWYq2i5IPiq7Y5ODBZguhcKT-5gNXsCIkgtA"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"0287a346d3bfab234046928408d53853","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc173fcc2-3fea-4b53-88b5-4d9079b0fe2b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc173fcc2-3fea-4b53-88b5-4d9079b0fe2b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:00.128878145Z"}]},"request_id":"ed24db79-d64d-406a-a51b-284a577e7187","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931042.9733052} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"0287a346d3bfab234046928408d53853","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0287a346d3bfab234046928408d53853"} gateway-1 | {"time_local":"21/Sep/2024:15:04:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.034","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0287a346d3bfab234046928408d53853"} device-1 | {"level":"info","message":"GET /devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b? 200 27ms","method":"GET","requestID":"0287a346d3bfab234046928408d53853","responseTime":27,"status":200,"url":"/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Mn0.-gvb63LSWYq2i5IPiq7Y5ODBZguhcKT-5gNXsCIkgtA","level":"info","message":"auth send jwt","requestID":"45c430687339da3c9eeeaa9a8b4c67f7"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"45c430687339da3c9eeeaa9a8b4c67f7","responseTime":7,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"45c430687339da3c9eeeaa9a8b4c67f7"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":11,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":11,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.888093,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"45c430687339da3c9eeeaa9a8b4c67f7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931042,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Mn0.-gvb63LSWYq2i5IPiq7Y5ODBZguhcKT-5gNXsCIkgtA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"45c430687339da3c9eeeaa9a8b4c67f7","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1"},"level":"info","message":"Attempting to run experiment","requestID":"45c430687339da3c9eeeaa9a8b4c67f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1"},"level":"info","message":"Attempting to book experiment","requestID":"45c430687339da3c9eeeaa9a8b4c67f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1"},"level":"info","message":"Successfully booked experiment","requestID":"45c430687339da3c9eeeaa9a8b4c67f7"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bd52e260-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bd533080-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":12,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":12,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.831384,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51320","level":"info","msg":"Received request.","req_id":13,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bd52e260-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931042,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Mn0.-gvb63LSWYq2i5IPiq7Y5ODBZguhcKT-5gNXsCIkgtA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bd52e260-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51320","level":"info","msg":"Sent response.","req_id":13,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.799788,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bd533080-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931042,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Mn0.-gvb63LSWYq2i5IPiq7Y5ODBZguhcKT-5gNXsCIkgtA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bd533080-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e4cbf10-cdc0-4304-b140-cb8b06574d64","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e4cbf10-cdc0-4304-b140-cb8b06574d64","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:00.028594256Z"}]},"request_id":"82e14dde-6019-4165-a9fc-6ed5990ba2ac","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.2188046} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bd52e260-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc173fcc2-3fea-4b53-88b5-4d9079b0fe2b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc173fcc2-3fea-4b53-88b5-4d9079b0fe2b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:00.128878145Z"}]},"request_id":"7c2299ae-e704-4e36-8815-628b3fa05595","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.2200568} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bd533080-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bd52e260-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64? 200 19ms","method":"GET","requestID":"bd52e260-782a-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bd533080-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b? 200 19ms","method":"GET","requestID":"bd533080-782a-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1"},"level":"info","message":"Setting up experiment","requestID":"45c430687339da3c9eeeaa9a8b4c67f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"45c430687339da3c9eeeaa9a8b4c67f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1"},"level":"info","message":"Successfully locked booking for experiment","requestID":"45c430687339da3c9eeeaa9a8b4c67f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"45c430687339da3c9eeeaa9a8b4c67f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"45c430687339da3c9eeeaa9a8b4c67f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1"},"level":"info","message":"Attempting to update booking for experiment","requestID":"45c430687339da3c9eeeaa9a8b4c67f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1"},"level":"info","message":"Successfully updated booking for experiment","requestID":"45c430687339da3c9eeeaa9a8b4c67f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1"},"level":"info","message":"Successfully set up experiment","requestID":"45c430687339da3c9eeeaa9a8b4c67f7"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bd6224a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bd6272c0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":14,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":14,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.79737,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51320","level":"info","msg":"Received request.","req_id":15,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bd6224a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931042,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Mn0.-gvb63LSWYq2i5IPiq7Y5ODBZguhcKT-5gNXsCIkgtA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bd6224a0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51320","level":"info","msg":"Sent response.","req_id":15,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.865576,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:03Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1"},"level":"info","message":"Successfully running experiment","requestID":"45c430687339da3c9eeeaa9a8b4c67f7"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bd6272c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931042,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Mn0.-gvb63LSWYq2i5IPiq7Y5ODBZguhcKT-5gNXsCIkgtA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bd6272c0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd62e7f0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":16,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e4cbf10-cdc0-4304-b140-cb8b06574d64","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e664a2bc-4a5f-4996-9fcc-18d2f555c8f2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.3271132} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e4cbf10-cdc0-4304-b140-cb8b06574d64","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e4cbf10-cdc0-4304-b140-cb8b06574d64","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:00.028594256Z"}]},"request_id":"93cc18eb-4e78-41ef-836e-0589a412e26b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.329412} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":16,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.639015,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bd62e7f0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"bd62e7f0-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc173fcc2-3fea-4b53-88b5-4d9079b0fe2b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc173fcc2-3fea-4b53-88b5-4d9079b0fe2b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:00.128878145Z"}]},"request_id":"75cbc321-b0aa-474e-a3a6-d5655246fa0b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.331431} authorization-1 | {"level":"info","message":"POST /relations/query 200 12ms","method":"POST","requestID":"bd6224a0-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"bd6272c0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0676c4b6-7dac-4c42-8db2-f97c42ab07c1#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0676c4b6-7dac-4c42-8db2-f97c42ab07c1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"0a6a9027-f69b-4eaa-92e4-b7c46347238e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.3401957} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd62e7f0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1ae0be78-f710-4c76-a9d6-86a7860946f3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.3403432} device-1 | {"level":"info","message":"POST /devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64/signaling 200 29ms","method":"POST","requestID":"bd62e7f0-782a-11ef-88d4-5fea3f61bb98","responseTime":29,"status":200,"url":"/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"45c430687339da3c9eeeaa9a8b4c67f7","responseTime":28,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd686630-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bd6224a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64? 200 43ms","method":"GET","requestID":"bd6224a0-782a-11ef-88d4-5fea3f61bb98","responseTime":44,"status":200,"url":"/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bd6272c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b? 200 43ms","method":"GET","requestID":"bd6272c0-782a-11ef-88d4-5fea3f61bb98","responseTime":43,"status":200,"url":"/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":17,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc173fcc2-3fea-4b53-88b5-4d9079b0fe2b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e972ee5a-65dc-4e08-b416-f6de6778adda","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.3542454} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":17,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.867007,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bd686630-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"bd686630-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd6a6200-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"45c430687339da3c9eeeaa9a8b4c67f7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd686630-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b/signaling 200 15ms","method":"POST","requestID":"bd686630-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":18,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:03Z"} gateway-1 | {"time_local":"21/Sep/2024:15:04:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"808","request_time":"0.374","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"45c430687339da3c9eeeaa9a8b4c67f7"} experiment-1 | {"level":"info","message":"POST /experiments? 201 347ms","method":"POST","requestID":"45c430687339da3c9eeeaa9a8b4c67f7","responseTime":347,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e4cbf10-cdc0-4304-b140-cb8b06574d64","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0daa14f4-a2a8-457c-94d9-b2ad27da59c0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.366293} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":18,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.368618,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bd6a6200-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"bd6a6200-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd6a6200-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64/signaling 200 13ms","method":"POST","requestID":"bd6a6200-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0M30.GPsOirmY0c5-Vgmky5rbWq44YiP86PJD1LaJtS61UvM","level":"info","message":"auth send jwt","requestID":"0a11b9687a36f0c7adaf50bffb3666ba"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0a11b9687a36f0c7adaf50bffb3666ba","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0a11b9687a36f0c7adaf50bffb3666ba"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd6d2120-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":19,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":19,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.059172,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51320","level":"info","msg":"Received request.","req_id":20,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0a11b9687a36f0c7adaf50bffb3666ba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931043,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0M30.GPsOirmY0c5-Vgmky5rbWq44YiP86PJD1LaJtS61UvM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0a11b9687a36f0c7adaf50bffb3666ba","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc173fcc2-3fea-4b53-88b5-4d9079b0fe2b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"35751f74-90a6-4cfe-a5f0-f024f5aa666e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.38426} authorization-1 | {"client_addr":"127.0.0.1:51320","level":"info","msg":"Sent response.","req_id":20,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.172993,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bd6d2120-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"bd6d2120-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e4cbf10-cdc0-4304-b140-cb8b06574d64","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e4cbf10-cdc0-4304-b140-cb8b06574d64","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:00.028594256Z"}]},"request_id":"230387fe-7d23-49b3-912d-1ed5e54176ef","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.3881981} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd6d2120-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b/signaling 200 11ms","method":"POST","requestID":"bd6d2120-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0a11b9687a36f0c7adaf50bffb3666ba","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"45c430687339da3c9eeeaa9a8b4c67f7"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0a11b9687a36f0c7adaf50bffb3666ba"} gateway-1 | {"time_local":"21/Sep/2024:15:04:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0a11b9687a36f0c7adaf50bffb3666ba"} device-1 | {"level":"info","message":"GET /devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64? 200 18ms","method":"GET","requestID":"0a11b9687a36f0c7adaf50bffb3666ba","responseTime":18,"status":200,"url":"/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bd6f9220-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bd6fe040-782a-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0M30.GPsOirmY0c5-Vgmky5rbWq44YiP86PJD1LaJtS61UvM","level":"info","message":"auth send jwt","requestID":"93e01d6e028367492bd6f40e95cef960"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":21,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":21,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.646025,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51320","level":"info","msg":"Received request.","req_id":22,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:03Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"93e01d6e028367492bd6f40e95cef960","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bd6f9220-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931042,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Mn0.-gvb63LSWYq2i5IPiq7Y5ODBZguhcKT-5gNXsCIkgtA"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"93e01d6e028367492bd6f40e95cef960"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bd6f9220-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51320","level":"info","msg":"Sent response.","req_id":22,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.865066,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bd6fe040-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931042,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Mn0.-gvb63LSWYq2i5IPiq7Y5ODBZguhcKT-5gNXsCIkgtA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bd6fe040-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":23,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":23,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.847961,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"93e01d6e028367492bd6f40e95cef960","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931043,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0M30.GPsOirmY0c5-Vgmky5rbWq44YiP86PJD1LaJtS61UvM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"93e01d6e028367492bd6f40e95cef960","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e4cbf10-cdc0-4304-b140-cb8b06574d64","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e4cbf10-cdc0-4304-b140-cb8b06574d64","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:00.028594256Z"}]},"request_id":"b6f640a0-b3a8-417d-9f05-5b37e4456303","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.405458} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc173fcc2-3fea-4b53-88b5-4d9079b0fe2b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc173fcc2-3fea-4b53-88b5-4d9079b0fe2b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:00.128878145Z"}]},"request_id":"5c7c82c5-1258-4269-9295-551648e008da","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.4066398} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"bd6f9220-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bd6fe040-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc173fcc2-3fea-4b53-88b5-4d9079b0fe2b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc173fcc2-3fea-4b53-88b5-4d9079b0fe2b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:00.128878145Z"}]},"request_id":"afc268b9-b327-4f9a-85ad-b74c909bb05e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.4111476} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"93e01d6e028367492bd6f40e95cef960","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bd6f9220-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64? 200 20ms","method":"GET","requestID":"bd6f9220-782a-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bd6fe040-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b? 200 19ms","method":"GET","requestID":"bd6fe040-782a-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"93e01d6e028367492bd6f40e95cef960"} gateway-1 | {"time_local":"21/Sep/2024:15:04:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"93e01d6e028367492bd6f40e95cef960"} device-1 | {"level":"info","message":"GET /devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b? 200 17ms","method":"GET","requestID":"93e01d6e028367492bd6f40e95cef960","responseTime":17,"status":200,"url":"/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1"},"level":"info","message":"Building connection plan","requestID":"45c430687339da3c9eeeaa9a8b4c67f7"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"c6df70ba-3467-4452-b975-7af01f95379e"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"5e2c248a-7e0c-4ff8-8166-bb88414fc7d2"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"5e4a2633-9cda-4b05-b6eb-1dfb5799d5c9"}]},"level":"info","message":"Built pairwise service configurations","requestID":"45c430687339da3c9eeeaa9a8b4c67f7"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"45c430687339da3c9eeeaa9a8b4c67f7"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"bd747420-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":24,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":24,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.782013,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bd747420-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931042,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Mn0.-gvb63LSWYq2i5IPiq7Y5ODBZguhcKT-5gNXsCIkgtA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bd747420-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"6e55c629-b732-474b-b91b-a4f27c416488","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.4492652} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6bb8f952-5e9a-4601-ae58-b4b0ccc83f3c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.449481} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"bd747420-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"bd747420-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"bd747420-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/ff3f39f7-f8df-4e56-8c73-029356638246'","requestID":"bd747420-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/ff3f39f7-f8df-4e56-8c73-029356638246'","requestID":"bd747420-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"bd747420-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 41ms","method":"POST","requestID":"bd747420-782a-11ef-88d4-5fea3f61bb98","responseTime":41,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"bd747420-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"45c430687339da3c9eeeaa9a8b4c67f7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd80f740-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":25,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e4cbf10-cdc0-4304-b140-cb8b06574d64","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c8b15608-bf42-4903-bc9c-db696f465df5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.5135202} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":25,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.446629,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bd80f740-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bd80f740-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd80f740-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64/signaling 200 10ms","method":"POST","requestID":"bd80f740-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd82f310-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":26,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc173fcc2-3fea-4b53-88b5-4d9079b0fe2b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f02b08e6-8f86-4cba-b903-b4b8ab2f56fd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.5255096} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":26,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.449717,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bd82f310-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bd82f310-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd82f310-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b/signaling 200 9ms","method":"POST","requestID":"bd82f310-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b/signaling"} device-1 | {"device":"c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"3e4cbf10-cdc0-4304-b140-cb8b06574d64","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"3e4cbf10-cdc0-4304-b140-cb8b06574d64","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 5485475767721993576 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:zHdJ\r\na=ice-pwd:yEgogNEaGskX3TZEVM4SEdKB\r\na=ice-options:trickle\r\na=fingerprint:sha-256 31:B0:25:7C:4F:FD:5E:F3:3A:BA:A8:C7:87:3B:A5:49:21:84:CF:BE:36:D4:22:97:97:17:9C:6D:05:3B:F2:79\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"3e4cbf10-cdc0-4304-b140-cb8b06574d64","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 8607551835100587870 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:RlzF\r\na=ice-pwd:nqvFoTLSH0x3VPQiw3W4vQpJ\r\na=ice-options:trickle\r\na=fingerprint:sha-256 33:BA:89:C8:B3:43:A9:CF:5E:B9:41:EE:29:0B:53:92:5D:6B:6D:82:7A:19:EB:65:4A:BD:A1:4E:F7:2A:BE:FC\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3988890097 1 udp 2113937151 e7c179b0-a4d2-4e7f-82a9-e2d9b137b368.local 50361 typ host generation 0 ufrag RlzF network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2129264866 1 udp 1677729535 141.24.211.56 50361 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag RlzF network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b'"} device-1 | {"content":{"candidate":"candidate:577154404 1 udp 2113937151 ac4c83e0-244f-4cd9-8ed0-c0820520bd67.local 39685 typ host generation 0 ufrag zHdJ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3e4cbf10-cdc0-4304-b140-cb8b06574d64","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2789984027 1 udp 1677729535 141.24.211.56 39685 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag zHdJ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3e4cbf10-cdc0-4304-b140-cb8b06574d64","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64'"} device-1 | {"device":"3e4cbf10-cdc0-4304-b140-cb8b06574d64","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ff3f39f7-f8df-4e56-8c73-029356638246' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ff3f39f7-f8df-4e56-8c73-029356638246","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"3e4cbf10-cdc0-4304-b140-cb8b06574d64","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"3e4cbf10-cdc0-4304-b140-cb8b06574d64","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2d4d04b8cb7427212c88121e044a5c47","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2d4d04b8cb7427212c88121e044a5c47","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/ff3f39f7-f8df-4e56-8c73-029356638246"}}},"level":"info","message":"received a callback","requestID":"2d4d04b8cb7427212c88121e044a5c47"} device-1 | {"data":{"peerconnection":"ff3f39f7-f8df-4e56-8c73-029356638246","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 13ms","method":"POST","requestID":"2d4d04b8cb7427212c88121e044a5c47","responseTime":13,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch","requestID":"2d4d04b8cb7427212c88121e044a5c47"} device-1 | {"data":{"peerconnection":"ff3f39f7-f8df-4e56-8c73-029356638246","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ff3f39f7-f8df-4e56-8c73-029356638246' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ff3f39f7-f8df-4e56-8c73-029356638246","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4827951c96ac6777ff9840af40e40b5f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4827951c96ac6777ff9840af40e40b5f","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/ff3f39f7-f8df-4e56-8c73-029356638246"}}},"level":"info","message":"received a callback","requestID":"4827951c96ac6777ff9840af40e40b5f"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"bd97b390-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":27,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fff3f39f7-f8df-4e56-8c73-029356638246","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"52f5ee04-c47c-4415-8e29-b7e82b84439b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.6622896} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":27,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.273663,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ff3f39f7-f8df-4e56-8c73-029356638246","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bd97b390-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/ff3f39f7-f8df-4e56-8c73-029356638246","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bd97b390-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"bd97b390-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/ff3f39f7-f8df-4e56-8c73-029356638246 200 10ms","method":"GET","requestID":"bd97b390-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/peerconnections/ff3f39f7-f8df-4e56-8c73-029356638246"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 34ms","method":"POST","requestID":"4827951c96ac6777ff9840af40e40b5f","responseTime":34,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.037","http_referrer":"","http_user_agent":"node-fetch","requestID":"4827951c96ac6777ff9840af40e40b5f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd9c2060-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":28,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc173fcc2-3fea-4b53-88b5-4d9079b0fe2b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bd4ed449-5a67-498b-bbe0-a50a1b2218cc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.6910968} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":28,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.260074,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bd9c2060-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bd9c2060-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd9c2060-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b/signaling 200 10ms","method":"POST","requestID":"bd9c2060-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0M30.GPsOirmY0c5-Vgmky5rbWq44YiP86PJD1LaJtS61UvM","level":"info","message":"auth send jwt","requestID":"3a56fbdb0405a99520af7eda8adbe93e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3a56fbdb0405a99520af7eda8adbe93e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd9e4340-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1","requestID":"3a56fbdb0405a99520af7eda8adbe93e"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":29,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51320","level":"info","msg":"Received request.","req_id":30,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e4cbf10-cdc0-4304-b140-cb8b06574d64","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"445eb35e-da30-4a83-a892-7d68d779224d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.70501} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":29,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.141001,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51320","level":"info","msg":"Sent response.","req_id":30,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.697399,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bd9e4340-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bd9e4340-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"3a56fbdb0405a99520af7eda8adbe93e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931043,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0M30.GPsOirmY0c5-Vgmky5rbWq44YiP86PJD1LaJtS61UvM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3a56fbdb0405a99520af7eda8adbe93e","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd9e4340-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64/signaling 200 9ms","method":"POST","requestID":"bd9e4340-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64/signaling"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1","requestID":"3a56fbdb0405a99520af7eda8adbe93e"} gateway-1 | {"time_local":"21/Sep/2024:15:04:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1 HTTP/1.1","status": "200","body_bytes_sent":"881","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3a56fbdb0405a99520af7eda8adbe93e"} experiment-1 | {"level":"info","message":"GET /experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1 200 17ms","method":"GET","requestID":"3a56fbdb0405a99520af7eda8adbe93e","responseTime":17,"status":200,"url":"/experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0M30.GPsOirmY0c5-Vgmky5rbWq44YiP86PJD1LaJtS61UvM","level":"info","message":"auth send jwt","requestID":"d363726ffd861c0dbb40e7d54af3d7cc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d363726ffd861c0dbb40e7d54af3d7cc","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1","requestID":"d363726ffd861c0dbb40e7d54af3d7cc"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":31,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":31,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.521363,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d363726ffd861c0dbb40e7d54af3d7cc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931043,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0M30.GPsOirmY0c5-Vgmky5rbWq44YiP86PJD1LaJtS61UvM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d363726ffd861c0dbb40e7d54af3d7cc","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1"},"level":"info","message":"Attempting to finish experiment","requestID":"d363726ffd861c0dbb40e7d54af3d7cc"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"bda40fa0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":32,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":32,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.733481,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ff3f39f7-f8df-4e56-8c73-029356638246","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bda40fa0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/ff3f39f7-f8df-4e56-8c73-029356638246","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931043,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0M30.GPsOirmY0c5-Vgmky5rbWq44YiP86PJD1LaJtS61UvM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bda40fa0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/ff3f39f7-f8df-4e56-8c73-029356638246","device":"c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/ff3f39f7-f8df-4e56-8c73-029356638246","device":"3e4cbf10-cdc0-4304-b140-cb8b06574d64","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ff3f39f7-f8df-4e56-8c73-029356638246' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/ff3f39f7-f8df-4e56-8c73-029356638246' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ff3f39f7-f8df-4e56-8c73-029356638246","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"31db2a930d538282e4e64c07b9638d1b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"31db2a930d538282e4e64c07b9638d1b","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cbf7fffc1b78bac3515c2d85d3b13585","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/ff3f39f7-f8df-4e56-8c73-029356638246"}}},"level":"info","message":"received a callback","requestID":"31db2a930d538282e4e64c07b9638d1b"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"cbf7fffc1b78bac3515c2d85d3b13585","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/ff3f39f7-f8df-4e56-8c73-029356638246"}}},"level":"info","message":"received a callback","requestID":"cbf7fffc1b78bac3515c2d85d3b13585"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fff3f39f7-f8df-4e56-8c73-029356638246': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fff3f39f7-f8df-4e56-8c73-029356638246","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"adceea18-74e9-4991-941b-d98f1205c10f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.7712743} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"896fa4f0-fe67-46bc-b9d8-8d0b21c3bd99","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.7715423} device-1 | {"data":{"peerconnection":"ff3f39f7-f8df-4e56-8c73-029356638246","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"bda40fa0-782a-11ef-88d4-5fea3f61bb98","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"bda40fa0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/ff3f39f7-f8df-4e56-8c73-029356638246 204 43ms","method":"DELETE","requestID":"bda40fa0-782a-11ef-88d4-5fea3f61bb98","responseTime":43,"status":204,"url":"/peerconnections/ff3f39f7-f8df-4e56-8c73-029356638246"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1"},"level":"info","message":"Successfully finished experiment","requestID":"d363726ffd861c0dbb40e7d54af3d7cc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bdb46350-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":33,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc173fcc2-3fea-4b53-88b5-4d9079b0fe2b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"de3de93e-053e-41e7-aab7-54eab8841e7f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.8505583} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":33,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.400846,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bdb46350-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bdb46350-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bdb46350-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b/signaling 200 11ms","method":"POST","requestID":"bdb46350-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bdb68630-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0676c4b6-7dac-4c42-8db2-f97c42ab07c1': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0676c4b6-7dac-4c42-8db2-f97c42ab07c1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"179fd3da-d6ab-404f-8b12-c9d28d3cbfe0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.8607092} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3ff99fa3-0793-472f-9adf-f3052a5f6eba","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.8609164} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"d363726ffd861c0dbb40e7d54af3d7cc","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":34,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e4cbf10-cdc0-4304-b140-cb8b06574d64","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"afc93584-649c-4816-ae61-f6d2c7730cf6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.864155} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":34,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.08551,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bdb68630-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bdb68630-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bdb68630-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64/signaling 200 10ms","method":"POST","requestID":"bdb68630-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1","requestID":"d363726ffd861c0dbb40e7d54af3d7cc"} gateway-1 | {"time_local":"21/Sep/2024:15:04:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.210","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d363726ffd861c0dbb40e7d54af3d7cc"} experiment-1 | {"level":"info","message":"DELETE /experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1 204 209ms","method":"DELETE","requestID":"d363726ffd861c0dbb40e7d54af3d7cc","responseTime":209,"status":204,"url":"/experiments/0676c4b6-7dac-4c42-8db2-f97c42ab07c1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0M30.GPsOirmY0c5-Vgmky5rbWq44YiP86PJD1LaJtS61UvM","level":"info","message":"auth send jwt","requestID":"1647fe0e6332542bf44b124a64af461c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1647fe0e6332542bf44b124a64af461c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1647fe0e6332542bf44b124a64af461c"} gateway-1 | {"time_local":"21/Sep/2024:15:04:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3079","request_time":"1.182","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0605d799ed44bcea740f8a381638476c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 179ms","method":"POST","requestID":"31db2a930d538282e4e64c07b9638d1b","responseTime":179,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.182","http_referrer":"","http_user_agent":"node-fetch","requestID":"31db2a930d538282e4e64c07b9638d1b"} gateway-1 | {"time_local":"21/Sep/2024:15:04:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.183","http_referrer":"","http_user_agent":"node-fetch","requestID":"cbf7fffc1b78bac3515c2d85d3b13585"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 178ms","method":"POST","requestID":"cbf7fffc1b78bac3515c2d85d3b13585","responseTime":178,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3078","request_time":"1.176","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"fd310a99a671e0f8a16db1887264db8f"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":35,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":35,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.929968,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1647fe0e6332542bf44b124a64af461c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931043,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0M30.GPsOirmY0c5-Vgmky5rbWq44YiP86PJD1LaJtS61UvM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1647fe0e6332542bf44b124a64af461c","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/3e4cbf10-cdc0-4304-b140-cb8b06574d64' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/c173fcc2-3fea-4b53-88b5-4d9079b0fe2b' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf9e963-b337-433b-8cda-9e2d672f1e46","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b83d95a5-6115-4b1b-9981-48ef7499b20d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.9715724} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1647fe0e6332542bf44b124a64af461c","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"30873baf-42b1-41e7-944f-df745f97c64d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.9773223} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"1647fe0e6332542bf44b124a64af461c","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf9e963-b337-433b-8cda-9e2d672f1e46","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"5ed7fe20-39e3-48ac-b8f9-d581053a5018","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.9885547} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"92c348bc-af5e-4a73-b667-04ac804500aa","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.9887276} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"1647fe0e6332542bf44b124a64af461c","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf9e963-b337-433b-8cda-9e2d672f1e46","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf9e963-b337-433b-8cda-9e2d672f1e46","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:03.988544532Z"}]},"request_id":"f205df38-2e6f-4261-8306-29037e4f17b7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931043.9930596} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1647fe0e6332542bf44b124a64af461c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1647fe0e6332542bf44b124a64af461c"} gateway-1 | {"time_local":"21/Sep/2024:15:04:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1647fe0e6332542bf44b124a64af461c"} device-1 | {"level":"info","message":"POST /devices? 201 55ms","method":"POST","requestID":"1647fe0e6332542bf44b124a64af461c","responseTime":55,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0NH0.WGr_H__nM2EBnFSYCWrQCzwK31Goe3UyWwIaB5gMC-Q","level":"info","message":"auth send jwt","requestID":"bb1c7613c5652c86b227c383f1b94c7d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bb1c7613c5652c86b227c383f1b94c7d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"bb1c7613c5652c86b227c383f1b94c7d"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":36,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:04Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":36,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.677726,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bb1c7613c5652c86b227c383f1b94c7d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931044,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0NH0.WGr_H__nM2EBnFSYCWrQCzwK31Goe3UyWwIaB5gMC-Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bb1c7613c5652c86b227c383f1b94c7d","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fa49c15-7baa-408a-ab0e-992d6f5e285f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"04852581-9b8b-4aec-a75e-007475347599","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931044.0204897} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bb1c7613c5652c86b227c383f1b94c7d","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"600fd066-b55d-4c46-973d-b6ab87ea07aa","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931044.0260208} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"bb1c7613c5652c86b227c383f1b94c7d","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fa49c15-7baa-408a-ab0e-992d6f5e285f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"497bd389-8836-4535-bc39-3370d8b7e8b6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931044.044308} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2906e44e-d680-4f80-9d3b-6fc04e44b508","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931044.0443785} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"bb1c7613c5652c86b227c383f1b94c7d","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fa49c15-7baa-408a-ab0e-992d6f5e285f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fa49c15-7baa-408a-ab0e-992d6f5e285f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:04.044294571Z"}]},"request_id":"6408048d-8fef-457e-94c2-c44add3e0e7b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931044.0495396} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bb1c7613c5652c86b227c383f1b94c7d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"bb1c7613c5652c86b227c383f1b94c7d"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"bb1c7613c5652c86b227c383f1b94c7d","responseTime":51,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bb1c7613c5652c86b227c383f1b94c7d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0NH0.WGr_H__nM2EBnFSYCWrQCzwK31Goe3UyWwIaB5gMC-Q","level":"info","message":"auth send jwt","requestID":"432b2e3799b082242c3c3f6f8635b26e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"432b2e3799b082242c3c3f6f8635b26e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"432b2e3799b082242c3c3f6f8635b26e"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":37,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:04Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":37,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.17691,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"432b2e3799b082242c3c3f6f8635b26e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931044,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0NH0.WGr_H__nM2EBnFSYCWrQCzwK31Goe3UyWwIaB5gMC-Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"432b2e3799b082242c3c3f6f8635b26e","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fa49c15-7baa-408a-ab0e-992d6f5e285f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fa49c15-7baa-408a-ab0e-992d6f5e285f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:04.044294571Z"}]},"request_id":"5818ae30-8610-4535-ba56-94ef614933c2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931044.6163743} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"432b2e3799b082242c3c3f6f8635b26e","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2d525207-4e4f-4348-a0f7-c784888a60bd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931044.6254103} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"432b2e3799b082242c3c3f6f8635b26e","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fa49c15-7baa-408a-ab0e-992d6f5e285f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fa49c15-7baa-408a-ab0e-992d6f5e285f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:04.044294571Z"}]},"request_id":"492a3efa-5622-4794-8d64-e573a186add2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931044.646464} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"432b2e3799b082242c3c3f6f8635b26e","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"432b2e3799b082242c3c3f6f8635b26e"} device-1 | {"level":"info","message":"PATCH /devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f 200 53ms","method":"PATCH","requestID":"432b2e3799b082242c3c3f6f8635b26e","responseTime":53,"status":200,"url":"/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f"} gateway-1 | {"time_local":"21/Sep/2024:15:04:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.061","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"432b2e3799b082242c3c3f6f8635b26e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0NH0.WGr_H__nM2EBnFSYCWrQCzwK31Goe3UyWwIaB5gMC-Q","level":"info","message":"auth send jwt","requestID":"ad0f6acb091483cfec5f3b4bf33bcbee"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ad0f6acb091483cfec5f3b4bf33bcbee","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ad0f6acb091483cfec5f3b4bf33bcbee"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":38,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:04Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":38,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.175576,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ad0f6acb091483cfec5f3b4bf33bcbee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931044,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0NH0.WGr_H__nM2EBnFSYCWrQCzwK31Goe3UyWwIaB5gMC-Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ad0f6acb091483cfec5f3b4bf33bcbee","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ad0f6acb091483cfec5f3b4bf33bcbee"} gateway-1 | {"time_local":"21/Sep/2024:15:04:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.033","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"ad0f6acb091483cfec5f3b4bf33bcbee"} device-1 | {"level":"info","message":"POST /devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f/websocket 200 26ms","method":"POST","requestID":"ad0f6acb091483cfec5f3b4bf33bcbee","responseTime":26,"status":200,"url":"/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"944d494d51abc0bade874a64537ef134","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"944d494d51abc0bade874a64537ef134","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2bf9e963-b337-433b-8cda-9e2d672f1e46/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.006","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"944d494d51abc0bade874a64537ef134"} device-1 | {"level":"info","message":"OPTIONS /devices/2bf9e963-b337-433b-8cda-9e2d672f1e46/websocket 200 1ms","method":"OPTIONS","requestID":"944d494d51abc0bade874a64537ef134","responseTime":1,"status":200,"url":"/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Nn0.pj_5D_OwoixYoXxrvZO-v0ObNh_IMTF8xpjxlP6BHXM","level":"info","message":"auth send jwt","requestID":"09263bc78454c314f08efcc0e0970c47"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"09263bc78454c314f08efcc0e0970c47","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"09263bc78454c314f08efcc0e0970c47"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":39,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":39,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.298172,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"09263bc78454c314f08efcc0e0970c47","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931046,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Nn0.pj_5D_OwoixYoXxrvZO-v0ObNh_IMTF8xpjxlP6BHXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"09263bc78454c314f08efcc0e0970c47","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"09263bc78454c314f08efcc0e0970c47"} gateway-1 | {"time_local":"21/Sep/2024:15:04:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2bf9e963-b337-433b-8cda-9e2d672f1e46/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.041","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"09263bc78454c314f08efcc0e0970c47"} device-1 | {"level":"info","message":"POST /devices/2bf9e963-b337-433b-8cda-9e2d672f1e46/websocket 200 34ms","method":"POST","requestID":"09263bc78454c314f08efcc0e0970c47","responseTime":34,"status":200,"url":"/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"69e24d5dc2f07fd2079472eaa888ca53","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"69e24d5dc2f07fd2079472eaa888ca53","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2bf9e963-b337-433b-8cda-9e2d672f1e46? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.005","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"69e24d5dc2f07fd2079472eaa888ca53"} device-1 | {"level":"info","message":"OPTIONS /devices/2bf9e963-b337-433b-8cda-9e2d672f1e46? 200 1ms","method":"OPTIONS","requestID":"69e24d5dc2f07fd2079472eaa888ca53","responseTime":1,"status":200,"url":"/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Nn0.pj_5D_OwoixYoXxrvZO-v0ObNh_IMTF8xpjxlP6BHXM","level":"info","message":"auth send jwt","requestID":"aa20331c51a56cdd6e65846185f93244"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"aa20331c51a56cdd6e65846185f93244","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"aa20331c51a56cdd6e65846185f93244"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":40,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":40,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.289302,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"aa20331c51a56cdd6e65846185f93244","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931046,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Nn0.pj_5D_OwoixYoXxrvZO-v0ObNh_IMTF8xpjxlP6BHXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"aa20331c51a56cdd6e65846185f93244","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf9e963-b337-433b-8cda-9e2d672f1e46","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf9e963-b337-433b-8cda-9e2d672f1e46","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:03.988544532Z"}]},"request_id":"2a2e2765-4ea9-4b19-90b6-bbec3578e141","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931046.180259} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"aa20331c51a56cdd6e65846185f93244","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6ecb358e-42e3-46e8-8309-9fe106bc2277","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931046.1901205} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"aa20331c51a56cdd6e65846185f93244","responseTime":10,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf9e963-b337-433b-8cda-9e2d672f1e46","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf9e963-b337-433b-8cda-9e2d672f1e46","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:03.988544532Z"}]},"request_id":"356d4a41-b7fe-4f93-bf03-ed43b3708e59","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931046.1999502} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"aa20331c51a56cdd6e65846185f93244","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"aa20331c51a56cdd6e65846185f93244"} gateway-1 | {"time_local":"21/Sep/2024:15:04:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/2bf9e963-b337-433b-8cda-9e2d672f1e46? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.048","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"aa20331c51a56cdd6e65846185f93244"} device-1 | {"level":"info","message":"PATCH /devices/2bf9e963-b337-433b-8cda-9e2d672f1e46? 200 40ms","method":"PATCH","requestID":"aa20331c51a56cdd6e65846185f93244","responseTime":40,"status":200,"url":"/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Nn0.pj_5D_OwoixYoXxrvZO-v0ObNh_IMTF8xpjxlP6BHXM","level":"info","message":"auth send jwt","requestID":"cb0399075b5a511607bee27b57df662f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"cb0399075b5a511607bee27b57df662f","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cb0399075b5a511607bee27b57df662f"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":41,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":41,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.163801,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cb0399075b5a511607bee27b57df662f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931046,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Nn0.pj_5D_OwoixYoXxrvZO-v0ObNh_IMTF8xpjxlP6BHXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cb0399075b5a511607bee27b57df662f","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf9e963-b337-433b-8cda-9e2d672f1e46","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf9e963-b337-433b-8cda-9e2d672f1e46","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:03.988544532Z"}]},"request_id":"b794015c-e97e-4bac-b7ca-d7af4341668b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931046.2297797} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cb0399075b5a511607bee27b57df662f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cb0399075b5a511607bee27b57df662f"} gateway-1 | {"time_local":"21/Sep/2024:15:04:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2bf9e963-b337-433b-8cda-9e2d672f1e46? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cb0399075b5a511607bee27b57df662f"} device-1 | {"level":"info","message":"GET /devices/2bf9e963-b337-433b-8cda-9e2d672f1e46? 200 19ms","method":"GET","requestID":"cb0399075b5a511607bee27b57df662f","responseTime":19,"status":200,"url":"/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Nn0.pj_5D_OwoixYoXxrvZO-v0ObNh_IMTF8xpjxlP6BHXM","level":"info","message":"auth send jwt","requestID":"d0ea89299b800364353da41d2ae64bd2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d0ea89299b800364353da41d2ae64bd2","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d0ea89299b800364353da41d2ae64bd2"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":42,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":42,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.265457,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d0ea89299b800364353da41d2ae64bd2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931046,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Nn0.pj_5D_OwoixYoXxrvZO-v0ObNh_IMTF8xpjxlP6BHXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d0ea89299b800364353da41d2ae64bd2","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fa49c15-7baa-408a-ab0e-992d6f5e285f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fa49c15-7baa-408a-ab0e-992d6f5e285f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:04.044294571Z"}]},"request_id":"78b8c2a9-2add-4534-b040-2ce525217cae","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931046.2600026} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d0ea89299b800364353da41d2ae64bd2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d0ea89299b800364353da41d2ae64bd2"} gateway-1 | {"time_local":"21/Sep/2024:15:04:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d0ea89299b800364353da41d2ae64bd2"} device-1 | {"level":"info","message":"GET /devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f? 200 20ms","method":"GET","requestID":"d0ea89299b800364353da41d2ae64bd2","responseTime":20,"status":200,"url":"/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Nn0.pj_5D_OwoixYoXxrvZO-v0ObNh_IMTF8xpjxlP6BHXM","level":"info","message":"auth send jwt","requestID":"716e13b04d2126d9c7eb232925023c61"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"716e13b04d2126d9c7eb232925023c61","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"716e13b04d2126d9c7eb232925023c61"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":43,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":43,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.364833,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"716e13b04d2126d9c7eb232925023c61","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931046,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Nn0.pj_5D_OwoixYoXxrvZO-v0ObNh_IMTF8xpjxlP6BHXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"716e13b04d2126d9c7eb232925023c61","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9"},"level":"info","message":"Attempting to run experiment","requestID":"716e13b04d2126d9c7eb232925023c61"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9"},"level":"info","message":"Attempting to book experiment","requestID":"716e13b04d2126d9c7eb232925023c61"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9"},"level":"info","message":"Successfully booked experiment","requestID":"716e13b04d2126d9c7eb232925023c61"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bf333b20-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bf33d760-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":44,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":44,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.042538,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51320","level":"info","msg":"Received request.","req_id":45,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bf333b20-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931046,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Nn0.pj_5D_OwoixYoXxrvZO-v0ObNh_IMTF8xpjxlP6BHXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"bf333b20-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51320","level":"info","msg":"Sent response.","req_id":45,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.880761,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bf33d760-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931046,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Nn0.pj_5D_OwoixYoXxrvZO-v0ObNh_IMTF8xpjxlP6BHXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bf33d760-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf9e963-b337-433b-8cda-9e2d672f1e46","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf9e963-b337-433b-8cda-9e2d672f1e46","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:03.988544532Z"}]},"request_id":"757119b8-bf35-4fe8-b925-23af3a777120","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931046.3702745} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"bf333b20-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fa49c15-7baa-408a-ab0e-992d6f5e285f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fa49c15-7baa-408a-ab0e-992d6f5e285f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:04.044294571Z"}]},"request_id":"498d8647-f0b5-4edd-a274-876272244057","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931046.3719342} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"bf33d760-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bf333b20-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/2bf9e963-b337-433b-8cda-9e2d672f1e46? 200 26ms","method":"GET","requestID":"bf333b20-782a-11ef-88d4-5fea3f61bb98","responseTime":26,"status":200,"url":"/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bf33d760-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f? 200 24ms","method":"GET","requestID":"bf33d760-782a-11ef-88d4-5fea3f61bb98","responseTime":24,"status":200,"url":"/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9"},"level":"info","message":"Setting up experiment","requestID":"716e13b04d2126d9c7eb232925023c61"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"716e13b04d2126d9c7eb232925023c61"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9"},"level":"info","message":"Successfully locked booking for experiment","requestID":"716e13b04d2126d9c7eb232925023c61"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"716e13b04d2126d9c7eb232925023c61"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"716e13b04d2126d9c7eb232925023c61"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9"},"level":"info","message":"Attempting to update booking for experiment","requestID":"716e13b04d2126d9c7eb232925023c61"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9"},"level":"info","message":"Successfully updated booking for experiment","requestID":"716e13b04d2126d9c7eb232925023c61"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9"},"level":"info","message":"Successfully set up experiment","requestID":"716e13b04d2126d9c7eb232925023c61"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bf425650-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bf42cb80-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bf4319a0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":46,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":46,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.463932,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51320","level":"info","msg":"Received request.","req_id":47,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:06Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9"},"level":"info","message":"Successfully running experiment","requestID":"716e13b04d2126d9c7eb232925023c61"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bf425650-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931046,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Nn0.pj_5D_OwoixYoXxrvZO-v0ObNh_IMTF8xpjxlP6BHXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"bf425650-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51320","level":"info","msg":"Sent response.","req_id":47,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.288641,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bf42cb80-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931046,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Nn0.pj_5D_OwoixYoXxrvZO-v0ObNh_IMTF8xpjxlP6BHXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"bf42cb80-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf9e963-b337-433b-8cda-9e2d672f1e46","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf9e963-b337-433b-8cda-9e2d672f1e46","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:03.988544532Z"}]},"request_id":"7a6962d8-ff01-4cec-a1af-2dff86bb3306","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931046.4759448} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fa49c15-7baa-408a-ab0e-992d6f5e285f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fa49c15-7baa-408a-ab0e-992d6f5e285f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:04.044294571Z"}]},"request_id":"cb1bff7a-de4f-4620-9e9b-0500dfb2406b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931046.4783435} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"bf425650-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"bf42cb80-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf9e963-b337-433b-8cda-9e2d672f1e46","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2821f41d-57d3-47d3-b284-b116cdd24bdb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931046.4814498} authorization-1 | {"client_addr":"127.0.0.1:51328","level":"info","msg":"Received request.","req_id":48,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51328","level":"info","msg":"Sent response.","req_id":48,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.683211,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bf4319a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 20ms","method":"POST","requestID":"bf4319a0-782a-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F215a5a1b-e3f0-4ba9-af97-e5280587bdf9#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F215a5a1b-e3f0-4ba9-af97-e5280587bdf9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"d532e89d-f189-4c24-9f49-0f40d93f7f4e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931046.4848528} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b249cc20-1ce5-4c7d-9c41-4dd11d8b9ca2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931046.4851613} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bf425650-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"716e13b04d2126d9c7eb232925023c61","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/2bf9e963-b337-433b-8cda-9e2d672f1e46? 200 36ms","method":"GET","requestID":"bf425650-782a-11ef-88d4-5fea3f61bb98","responseTime":36,"status":200,"url":"/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bf42cb80-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f? 200 34ms","method":"GET","requestID":"bf42cb80-782a-11ef-88d4-5fea3f61bb98","responseTime":34,"status":200,"url":"/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bf4319a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/2bf9e963-b337-433b-8cda-9e2d672f1e46/signaling 200 34ms","method":"POST","requestID":"bf4319a0-782a-11ef-88d4-5fea3f61bb98","responseTime":34,"status":200,"url":"/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bf49a950-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":49,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:06Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bf4a6ca0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf9e963-b337-433b-8cda-9e2d672f1e46","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"881a20a7-34e0-43ee-889d-98c2dea72282","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931046.508718} experiment-1 | {"data":{"experiment":"http://localhost/experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"716e13b04d2126d9c7eb232925023c61"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":49,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.380623,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51320","level":"info","msg":"Received request.","req_id":50,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:06Z"} gateway-1 | {"time_local":"21/Sep/2024:15:04:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.241","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"716e13b04d2126d9c7eb232925023c61"} experiment-1 | {"level":"info","message":"POST /experiments? 201 231ms","method":"POST","requestID":"716e13b04d2126d9c7eb232925023c61","responseTime":231,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bf49a950-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"bf49a950-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fa49c15-7baa-408a-ab0e-992d6f5e285f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9c59576a-4031-48c3-a971-82696cf24e92","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931046.5136037} authorization-1 | {"client_addr":"127.0.0.1:51320","level":"info","msg":"Sent response.","req_id":50,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.736942,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bf4a6ca0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bf4a6ca0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Nn0.pj_5D_OwoixYoXxrvZO-v0ObNh_IMTF8xpjxlP6BHXM","level":"info","message":"auth send jwt","requestID":"fbcfec55ec919d9acd5fb233ba068c47"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fbcfec55ec919d9acd5fb233ba068c47","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bf49a950-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/2bf9e963-b337-433b-8cda-9e2d672f1e46/signaling 200 18ms","method":"POST","requestID":"bf49a950-782a-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bf4a6ca0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f/signaling 200 15ms","method":"POST","requestID":"bf4a6ca0-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fbcfec55ec919d9acd5fb233ba068c47"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bf4d04b0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":51,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":51,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.671113,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51320","level":"info","msg":"Received request.","req_id":52,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fbcfec55ec919d9acd5fb233ba068c47","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931046,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Nn0.pj_5D_OwoixYoXxrvZO-v0ObNh_IMTF8xpjxlP6BHXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fbcfec55ec919d9acd5fb233ba068c47","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fa49c15-7baa-408a-ab0e-992d6f5e285f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d0e36f5d-6610-480c-9787-0ba76cb4d37a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931046.5279644} authorization-1 | {"client_addr":"127.0.0.1:51320","level":"info","msg":"Sent response.","req_id":52,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.220533,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bf4d04b0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bf4d04b0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf9e963-b337-433b-8cda-9e2d672f1e46","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf9e963-b337-433b-8cda-9e2d672f1e46","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:03.988544532Z"}]},"request_id":"17025844-c18b-4857-8a87-e688bc0becc7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931046.5327225} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fbcfec55ec919d9acd5fb233ba068c47","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bf4d04b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f/signaling 200 12ms","method":"POST","requestID":"bf4d04b0-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"716e13b04d2126d9c7eb232925023c61"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bf4f2790-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bf4f75b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fbcfec55ec919d9acd5fb233ba068c47"} gateway-1 | {"time_local":"21/Sep/2024:15:04:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2bf9e963-b337-433b-8cda-9e2d672f1e46? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fbcfec55ec919d9acd5fb233ba068c47"} device-1 | {"level":"info","message":"GET /devices/2bf9e963-b337-433b-8cda-9e2d672f1e46? 200 21ms","method":"GET","requestID":"fbcfec55ec919d9acd5fb233ba068c47","responseTime":21,"status":200,"url":"/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":53,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":53,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.429182,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bf4f2790-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931046,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Nn0.pj_5D_OwoixYoXxrvZO-v0ObNh_IMTF8xpjxlP6BHXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bf4f2790-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51320","level":"info","msg":"Received request.","req_id":54,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51320","level":"info","msg":"Sent response.","req_id":54,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.667099,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bf4f75b0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931046,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Nn0.pj_5D_OwoixYoXxrvZO-v0ObNh_IMTF8xpjxlP6BHXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bf4f75b0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Nn0.pj_5D_OwoixYoXxrvZO-v0ObNh_IMTF8xpjxlP6BHXM","level":"info","message":"auth send jwt","requestID":"83cc638e2044f1f073ccbf05a4186376"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"83cc638e2044f1f073ccbf05a4186376","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"83cc638e2044f1f073ccbf05a4186376"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf9e963-b337-433b-8cda-9e2d672f1e46","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf9e963-b337-433b-8cda-9e2d672f1e46","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:03.988544532Z"}]},"request_id":"8c8b6369-016b-42dc-b1ae-3a82f7dba9c0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931046.5483034} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bf4f2790-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fa49c15-7baa-408a-ab0e-992d6f5e285f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fa49c15-7baa-408a-ab0e-992d6f5e285f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:04.044294571Z"}]},"request_id":"816621ee-436e-4f85-aad4-3b740e17c16b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931046.5496387} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"bf4f75b0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":55,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":55,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.801252,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"83cc638e2044f1f073ccbf05a4186376","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931046,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Nn0.pj_5D_OwoixYoXxrvZO-v0ObNh_IMTF8xpjxlP6BHXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"83cc638e2044f1f073ccbf05a4186376","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bf4f2790-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/2bf9e963-b337-433b-8cda-9e2d672f1e46? 200 16ms","method":"GET","requestID":"bf4f2790-782a-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bf4f75b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f? 200 18ms","method":"GET","requestID":"bf4f75b0-782a-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fa49c15-7baa-408a-ab0e-992d6f5e285f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fa49c15-7baa-408a-ab0e-992d6f5e285f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:04.044294571Z"}]},"request_id":"ea4b2729-1399-40ff-9240-c061fa701628","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931046.557789} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"83cc638e2044f1f073ccbf05a4186376","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9"},"level":"info","message":"Building connection plan","requestID":"716e13b04d2126d9c7eb232925023c61"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"c90f5c69-cced-4fe0-9743-8f057011e415"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"01ea2d49-026d-4bdb-9001-e90be90ae92b"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"0ce33760-0874-41e3-8727-1d94fd474ea1"}]},"level":"info","message":"Built pairwise service configurations","requestID":"716e13b04d2126d9c7eb232925023c61"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"716e13b04d2126d9c7eb232925023c61"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"bf52f820-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"83cc638e2044f1f073ccbf05a4186376"} device-1 | {"level":"info","message":"GET /devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f? 200 17ms","method":"GET","requestID":"83cc638e2044f1f073ccbf05a4186376","responseTime":17,"status":200,"url":"/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"83cc638e2044f1f073ccbf05a4186376"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":56,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":56,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.722629,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bf52f820-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931046,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0Nn0.pj_5D_OwoixYoXxrvZO-v0ObNh_IMTF8xpjxlP6BHXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bf52f820-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"9ba2afb8-633b-4c08-b658-ab6de387dd1d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931046.5769298} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"792cd5b4-2879-4908-a42b-62ce4cb07a2c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931046.577188} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"bf52f820-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"bf52f820-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"bf52f820-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/4221a030-cdcc-4f49-89aa-196d79c92252'","requestID":"bf52f820-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/4221a030-cdcc-4f49-89aa-196d79c92252'","requestID":"bf52f820-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"bf52f820-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 30ms","method":"POST","requestID":"bf52f820-782a-11ef-88d4-5fea3f61bb98","responseTime":30,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"bf52f820-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"716e13b04d2126d9c7eb232925023c61"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bf5d3150-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":57,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf9e963-b337-433b-8cda-9e2d672f1e46","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"35da0505-1e7a-497f-b918-33d7980ff5f7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931046.6350455} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":57,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.771761,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bf5d3150-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bf5d3150-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"2bf9e963-b337-433b-8cda-9e2d672f1e46","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"2bf9e963-b337-433b-8cda-9e2d672f1e46","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bf5d3150-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/2bf9e963-b337-433b-8cda-9e2d672f1e46/signaling 200 12ms","method":"POST","requestID":"bf5d3150-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bf5f7b40-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":58,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fa49c15-7baa-408a-ab0e-992d6f5e285f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bc6e259f-a147-4997-8d21-105faf8deaee","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931046.6490805} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":58,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.241001,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bf5f7b40-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bf5f7b40-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bf5f7b40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f/signaling 200 9ms","method":"POST","requestID":"bf5f7b40-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f/signaling"} device-1 | {"device":"2fa49c15-7baa-408a-ab0e-992d6f5e285f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"4221a030-cdcc-4f49-89aa-196d79c92252","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 1004547299020800100 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=msid-semantic: WMS\r\nm=application 9 DTLS/SCTP 5000\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:tIf0\r\na=ice-pwd:pX4s2+S+CEiVMeIqaxjfERm9\r\na=ice-options:trickle\r\na=fingerprint:sha-256 71:F5:46:1F:89:87:5D:3F:F0:BA:1A:E7:36:BC:1D:7C:45:64:24:16:5F:1D:D1:3F:D8:71:48:97:26:33:7D:FA\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"2bf9e963-b337-433b-8cda-9e2d672f1e46","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2068280138 1 udp 2113937151 e5a85a68-5934-48b8-92ef-8c6d5c3d6094.local 34757 typ host generation 0 ufrag tIf0 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2bf9e963-b337-433b-8cda-9e2d672f1e46","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"2bf9e963-b337-433b-8cda-9e2d672f1e46","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:4285143349 1 udp 1677729535 141.24.211.56 34757 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag tIf0 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2bf9e963-b337-433b-8cda-9e2d672f1e46","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/4221a030-cdcc-4f49-89aa-196d79c92252' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4221a030-cdcc-4f49-89aa-196d79c92252","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"2bf9e963-b337-433b-8cda-9e2d672f1e46","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46'"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bd71521797c21009e8576f8f53aa526f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} device-1 | {"device":"2fa49c15-7baa-408a-ab0e-992d6f5e285f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"2fa49c15-7baa-408a-ab0e-992d6f5e285f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"bd71521797c21009e8576f8f53aa526f","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"2fa49c15-7baa-408a-ab0e-992d6f5e285f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/4221a030-cdcc-4f49-89aa-196d79c92252"}}},"level":"info","message":"received a callback","requestID":"bd71521797c21009e8576f8f53aa526f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 13ms","method":"POST","requestID":"bd71521797c21009e8576f8f53aa526f","responseTime":13,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch","requestID":"bd71521797c21009e8576f8f53aa526f"} device-1 | {"data":{"peerconnection":"4221a030-cdcc-4f49-89aa-196d79c92252","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"2fa49c15-7baa-408a-ab0e-992d6f5e285f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"2bf9e963-b337-433b-8cda-9e2d672f1e46","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"2fa49c15-7baa-408a-ab0e-992d6f5e285f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"4221a030-cdcc-4f49-89aa-196d79c92252","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"2bf9e963-b337-433b-8cda-9e2d672f1e46","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/4221a030-cdcc-4f49-89aa-196d79c92252' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4221a030-cdcc-4f49-89aa-196d79c92252","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6c596b11e6ae08db9f7e299efc8adc7f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6c596b11e6ae08db9f7e299efc8adc7f","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/4221a030-cdcc-4f49-89aa-196d79c92252"}}},"level":"info","message":"received a callback","requestID":"6c596b11e6ae08db9f7e299efc8adc7f"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"c0a4f390-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":59,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:08Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4221a030-cdcc-4f49-89aa-196d79c92252","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8a1aba26-83bf-4f86-af0c-dd233718eed6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931048.7847025} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":59,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.79138,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4221a030-cdcc-4f49-89aa-196d79c92252","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c0a4f390-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/4221a030-cdcc-4f49-89aa-196d79c92252","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c0a4f390-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"c0a4f390-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/4221a030-cdcc-4f49-89aa-196d79c92252 200 14ms","method":"GET","requestID":"c0a4f390-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/peerconnections/4221a030-cdcc-4f49-89aa-196d79c92252"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 48ms","method":"POST","requestID":"6c596b11e6ae08db9f7e299efc8adc7f","responseTime":48,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch","requestID":"6c596b11e6ae08db9f7e299efc8adc7f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c0aae700-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":60,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:08Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf9e963-b337-433b-8cda-9e2d672f1e46","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"af2c8a4c-3e31-44ca-b769-83f123d3d19f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931048.8231838} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":60,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.033388,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c0aae700-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"c0aae700-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c0aae700-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/2bf9e963-b337-433b-8cda-9e2d672f1e46/signaling 200 15ms","method":"POST","requestID":"c0aae700-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c0ada620-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":61,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:08Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fa49c15-7baa-408a-ab0e-992d6f5e285f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6ffc0135-ab2f-4bc7-94fe-5bf53ed96a0c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931048.8416708} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":61,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.70363,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c0ada620-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c0ada620-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c0ada620-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f/signaling 200 15ms","method":"POST","requestID":"c0ada620-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0OH0.ew3O8BfIw2QU7v9iuqtKnP0Wf-Uqo4x4zxstWVgdX4k","level":"info","message":"auth send jwt","requestID":"85225455bf0f6c2de8bba9fea46c91e2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"85225455bf0f6c2de8bba9fea46c91e2","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9","requestID":"85225455bf0f6c2de8bba9fea46c91e2"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":62,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:08Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":62,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.349154,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"85225455bf0f6c2de8bba9fea46c91e2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931048,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0OH0.ew3O8BfIw2QU7v9iuqtKnP0Wf-Uqo4x4zxstWVgdX4k"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"85225455bf0f6c2de8bba9fea46c91e2","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9","requestID":"85225455bf0f6c2de8bba9fea46c91e2"} gateway-1 | {"time_local":"21/Sep/2024:15:04:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9 HTTP/1.1","status": "200","body_bytes_sent":"885","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"85225455bf0f6c2de8bba9fea46c91e2"} experiment-1 | {"level":"info","message":"GET /experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9 200 18ms","method":"GET","requestID":"85225455bf0f6c2de8bba9fea46c91e2","responseTime":18,"status":200,"url":"/experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0OH0.ew3O8BfIw2QU7v9iuqtKnP0Wf-Uqo4x4zxstWVgdX4k","level":"info","message":"auth send jwt","requestID":"7f7f423e9da365f73fb36c18fff77052"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7f7f423e9da365f73fb36c18fff77052","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9","requestID":"7f7f423e9da365f73fb36c18fff77052"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":63,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:08Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":63,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.351704,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:08Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"7f7f423e9da365f73fb36c18fff77052","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931048,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0OH0.ew3O8BfIw2QU7v9iuqtKnP0Wf-Uqo4x4zxstWVgdX4k"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7f7f423e9da365f73fb36c18fff77052","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9"},"level":"info","message":"Attempting to finish experiment","requestID":"7f7f423e9da365f73fb36c18fff77052"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"c0b7df50-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":64,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:08Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":64,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.292283,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:08Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4221a030-cdcc-4f49-89aa-196d79c92252","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c0b7df50-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/4221a030-cdcc-4f49-89aa-196d79c92252","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931048,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0OH0.ew3O8BfIw2QU7v9iuqtKnP0Wf-Uqo4x4zxstWVgdX4k"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c0b7df50-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/4221a030-cdcc-4f49-89aa-196d79c92252","device":"2bf9e963-b337-433b-8cda-9e2d672f1e46","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"2fa49c15-7baa-408a-ab0e-992d6f5e285f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"2fa49c15-7baa-408a-ab0e-992d6f5e285f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"2fa49c15-7baa-408a-ab0e-992d6f5e285f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/4221a030-cdcc-4f49-89aa-196d79c92252' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/4221a030-cdcc-4f49-89aa-196d79c92252' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4221a030-cdcc-4f49-89aa-196d79c92252","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4221a030-cdcc-4f49-89aa-196d79c92252': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4221a030-cdcc-4f49-89aa-196d79c92252","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"8309a525-9547-4da6-b5b6-d9e65ab96f80","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931048.9309778} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"99e70a21-7b07-452c-8563-c4aeefca5c91","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931048.9313457} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b801eef94140ed26e3418338fe10345a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b801eef94140ed26e3418338fe10345a","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"c0b7df50-782a-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0109f3bf19ea1df37e32d0be6b1ba126","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/4221a030-cdcc-4f49-89aa-196d79c92252"}}},"level":"info","message":"received a callback","requestID":"b801eef94140ed26e3418338fe10345a"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0109f3bf19ea1df37e32d0be6b1ba126","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/4221a030-cdcc-4f49-89aa-196d79c92252"}}},"level":"info","message":"received a callback","requestID":"0109f3bf19ea1df37e32d0be6b1ba126"} device-1 | {"data":{"peerconnection":"4221a030-cdcc-4f49-89aa-196d79c92252","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"c0b7df50-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/4221a030-cdcc-4f49-89aa-196d79c92252 204 57ms","method":"DELETE","requestID":"c0b7df50-782a-11ef-88d4-5fea3f61bb98","responseTime":57,"status":204,"url":"/peerconnections/4221a030-cdcc-4f49-89aa-196d79c92252"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9"},"level":"info","message":"Successfully finished experiment","requestID":"7f7f423e9da365f73fb36c18fff77052"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c0c4d7a0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":65,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:08Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf9e963-b337-433b-8cda-9e2d672f1e46","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8de09eb7-f178-4bc9-a841-1618554dd151","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931048.994762} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":65,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.328821,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c0c4d7a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"c0c4d7a0-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F215a5a1b-e3f0-4ba9-af97-e5280587bdf9': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F215a5a1b-e3f0-4ba9-af97-e5280587bdf9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"b9575c7d-0e38-4ba7-8562-5d7bed6e17d8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931049.0024471} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"43cd1962-ac77-47dc-84a2-a5072ec62b58","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931049.0030682} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c0c4d7a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/2bf9e963-b337-433b-8cda-9e2d672f1e46/signaling 200 19ms","method":"POST","requestID":"c0c4d7a0-782a-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"7f7f423e9da365f73fb36c18fff77052","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c0c8a830-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":66,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:09Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fa49c15-7baa-408a-ab0e-992d6f5e285f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"09ce5da5-8c2e-473b-af6d-73e21d8dc949","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931049.0189419} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":66,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.737518,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c0c8a830-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"c0c8a830-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c0c8a830-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f/signaling 200 16ms","method":"POST","requestID":"c0c8a830-782a-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9","requestID":"7f7f423e9da365f73fb36c18fff77052"} gateway-1 | {"time_local":"21/Sep/2024:15:04:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.205","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7f7f423e9da365f73fb36c18fff77052"} experiment-1 | {"level":"info","message":"DELETE /experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9 204 200ms","method":"DELETE","requestID":"7f7f423e9da365f73fb36c18fff77052","responseTime":200,"status":204,"url":"/experiments/215a5a1b-e3f0-4ba9-af97-e5280587bdf9"} gateway-1 | {"time_local":"21/Sep/2024:15:04:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3030","request_time":"4.393","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f30b047f5a6c990fabddbf661674dc5f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 148ms","method":"POST","requestID":"b801eef94140ed26e3418338fe10345a","responseTime":148,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.155","http_referrer":"","http_user_agent":"node-fetch","requestID":"b801eef94140ed26e3418338fe10345a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0OX0.fi38OBqgh0sDrP_TrlNTDUfU3UB58cHUihH21okcBWA","level":"info","message":"auth send jwt","requestID":"7acc010e4673e627e4526ff9cbc6b1a8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 146ms","method":"POST","requestID":"0109f3bf19ea1df37e32d0be6b1ba126","responseTime":146,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7acc010e4673e627e4526ff9cbc6b1a8","responseTime":4,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.155","http_referrer":"","http_user_agent":"node-fetch","requestID":"0109f3bf19ea1df37e32d0be6b1ba126"} gateway-1 | {"time_local":"21/Sep/2024:15:04:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2891","request_time":"2.979","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"38a12908d96e6c77362cd7c9b684fe59"} device-1 | {"level":"info","message":"postDevices called","requestID":"7acc010e4673e627e4526ff9cbc6b1a8"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/2fa49c15-7baa-408a-ab0e-992d6f5e285f' closed"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":67,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:09Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":67,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.040893,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"7acc010e4673e627e4526ff9cbc6b1a8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931049,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0OX0.fi38OBqgh0sDrP_TrlNTDUfU3UB58cHUihH21okcBWA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7acc010e4673e627e4526ff9cbc6b1a8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/2bf9e963-b337-433b-8cda-9e2d672f1e46' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef1ef183-afbd-47f2-8e14-e328cbc0a788","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1b97fca8-29c9-40f0-b35c-27fc72a7ce42","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931049.1130624} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7acc010e4673e627e4526ff9cbc6b1a8","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c5a7471a-3533-434b-a5b4-7e506a61d73f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931049.1184638} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"7acc010e4673e627e4526ff9cbc6b1a8","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef1ef183-afbd-47f2-8e14-e328cbc0a788","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"d0e62cee-aac9-4c7c-b925-f3551f957eee","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931049.1288128} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b47eb5da-6d86-4d6c-a6b7-219fe087114b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931049.1291091} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"7acc010e4673e627e4526ff9cbc6b1a8","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef1ef183-afbd-47f2-8e14-e328cbc0a788","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef1ef183-afbd-47f2-8e14-e328cbc0a788","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:09.128801508Z"}]},"request_id":"6a84e6bb-c094-4df1-bc12-4d360fce04d6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931049.134041} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7acc010e4673e627e4526ff9cbc6b1a8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7acc010e4673e627e4526ff9cbc6b1a8"} gateway-1 | {"time_local":"21/Sep/2024:15:04:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7acc010e4673e627e4526ff9cbc6b1a8"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"7acc010e4673e627e4526ff9cbc6b1a8","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0OX0.fi38OBqgh0sDrP_TrlNTDUfU3UB58cHUihH21okcBWA","level":"info","message":"auth send jwt","requestID":"1c9867b07f8402bfab22cae0aad09e34"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1c9867b07f8402bfab22cae0aad09e34","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1c9867b07f8402bfab22cae0aad09e34"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":68,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:09Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":68,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.704575,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1c9867b07f8402bfab22cae0aad09e34","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931049,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0OX0.fi38OBqgh0sDrP_TrlNTDUfU3UB58cHUihH21okcBWA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1c9867b07f8402bfab22cae0aad09e34","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6a055b9-d9c7-42fa-a95a-12de754679c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0bc7f050-4967-498e-a547-10a777db4847","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931049.1607687} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1c9867b07f8402bfab22cae0aad09e34","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9d8c784b-e821-46c3-8718-0f022e334faa","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931049.1657493} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1c9867b07f8402bfab22cae0aad09e34","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6a055b9-d9c7-42fa-a95a-12de754679c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"35cfe71c-0a74-47d8-aa61-fd18eaea6459","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931049.1832814} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1a8d24eb-a893-40c5-9c5f-cc0922ff9eef","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931049.1834717} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"1c9867b07f8402bfab22cae0aad09e34","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6a055b9-d9c7-42fa-a95a-12de754679c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6a055b9-d9c7-42fa-a95a-12de754679c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:09.183266889Z"}]},"request_id":"4298b95c-dc3d-478a-b6de-84aaf0beb1ff","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931049.187887} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1c9867b07f8402bfab22cae0aad09e34","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1c9867b07f8402bfab22cae0aad09e34"} gateway-1 | {"time_local":"21/Sep/2024:15:04:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1c9867b07f8402bfab22cae0aad09e34"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"1c9867b07f8402bfab22cae0aad09e34","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0OX0.fi38OBqgh0sDrP_TrlNTDUfU3UB58cHUihH21okcBWA","level":"info","message":"auth send jwt","requestID":"b4d4969187cfab791359069ca81ddbe5"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b4d4969187cfab791359069ca81ddbe5","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b4d4969187cfab791359069ca81ddbe5"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":69,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:09Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":69,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.931506,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b4d4969187cfab791359069ca81ddbe5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931049,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0OX0.fi38OBqgh0sDrP_TrlNTDUfU3UB58cHUihH21okcBWA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b4d4969187cfab791359069ca81ddbe5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef1ef183-afbd-47f2-8e14-e328cbc0a788","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef1ef183-afbd-47f2-8e14-e328cbc0a788","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:09.128801508Z"}]},"request_id":"493f1e21-f1b6-45ab-876a-5aa985c2bca0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931049.6802497} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b4d4969187cfab791359069ca81ddbe5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a6f97200-3a28-465e-a45c-b67a34b8c6b8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931049.688169} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b4d4969187cfab791359069ca81ddbe5","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef1ef183-afbd-47f2-8e14-e328cbc0a788","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef1ef183-afbd-47f2-8e14-e328cbc0a788","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:09.128801508Z"}]},"request_id":"da4f16b6-effc-4250-af7b-35d8647e0c60","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931049.7011588} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b4d4969187cfab791359069ca81ddbe5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b4d4969187cfab791359069ca81ddbe5"} gateway-1 | {"time_local":"21/Sep/2024:15:04:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.044","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b4d4969187cfab791359069ca81ddbe5"} device-1 | {"level":"info","message":"PATCH /devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788 200 37ms","method":"PATCH","requestID":"b4d4969187cfab791359069ca81ddbe5","responseTime":37,"status":200,"url":"/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0OX0.fi38OBqgh0sDrP_TrlNTDUfU3UB58cHUihH21okcBWA","level":"info","message":"auth send jwt","requestID":"cf318c9c2a10a1fc555c6104d5ccc298"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cf318c9c2a10a1fc555c6104d5ccc298","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"cf318c9c2a10a1fc555c6104d5ccc298"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":70,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:09Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":70,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.187424,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cf318c9c2a10a1fc555c6104d5ccc298","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931049,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA0OX0.fi38OBqgh0sDrP_TrlNTDUfU3UB58cHUihH21okcBWA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cf318c9c2a10a1fc555c6104d5ccc298","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"cf318c9c2a10a1fc555c6104d5ccc298"} gateway-1 | {"time_local":"21/Sep/2024:15:04:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"cf318c9c2a10a1fc555c6104d5ccc298"} device-1 | {"level":"info","message":"POST /devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788/websocket 200 22ms","method":"POST","requestID":"cf318c9c2a10a1fc555c6104d5ccc298","responseTime":22,"status":200,"url":"/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"eaf652a958585c7da08f70a6c055891f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"eaf652a958585c7da08f70a6c055891f","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f6a055b9-d9c7-42fa-a95a-12de754679c9/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"eaf652a958585c7da08f70a6c055891f"} device-1 | {"level":"info","message":"OPTIONS /devices/f6a055b9-d9c7-42fa-a95a-12de754679c9/websocket 200 1ms","method":"OPTIONS","requestID":"eaf652a958585c7da08f70a6c055891f","responseTime":1,"status":200,"url":"/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1MX0.XYIu7vC2CKYT57FM-hn2QSvEzlNOR8Xk6M2pqU0Qh0I","level":"info","message":"auth send jwt","requestID":"fb1b5a21d1f1c131ce442f717710b389"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fb1b5a21d1f1c131ce442f717710b389","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"fb1b5a21d1f1c131ce442f717710b389"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":71,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":71,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.368201,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fb1b5a21d1f1c131ce442f717710b389","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931051,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1MX0.XYIu7vC2CKYT57FM-hn2QSvEzlNOR8Xk6M2pqU0Qh0I"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fb1b5a21d1f1c131ce442f717710b389","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"fb1b5a21d1f1c131ce442f717710b389"} gateway-1 | {"time_local":"21/Sep/2024:15:04:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f6a055b9-d9c7-42fa-a95a-12de754679c9/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"fb1b5a21d1f1c131ce442f717710b389"} device-1 | {"level":"info","message":"POST /devices/f6a055b9-d9c7-42fa-a95a-12de754679c9/websocket 200 23ms","method":"POST","requestID":"fb1b5a21d1f1c131ce442f717710b389","responseTime":23,"status":200,"url":"/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0f85cd04b8363f6647d2a63013d654b9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0f85cd04b8363f6647d2a63013d654b9","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f6a055b9-d9c7-42fa-a95a-12de754679c9? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0f85cd04b8363f6647d2a63013d654b9"} device-1 | {"level":"info","message":"OPTIONS /devices/f6a055b9-d9c7-42fa-a95a-12de754679c9? 200 1ms","method":"OPTIONS","requestID":"0f85cd04b8363f6647d2a63013d654b9","responseTime":1,"status":200,"url":"/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1MX0.XYIu7vC2CKYT57FM-hn2QSvEzlNOR8Xk6M2pqU0Qh0I","level":"info","message":"auth send jwt","requestID":"59cb1e300cd74977b4cea7393e0fe99b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"59cb1e300cd74977b4cea7393e0fe99b","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"59cb1e300cd74977b4cea7393e0fe99b"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":72,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":72,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.287305,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"59cb1e300cd74977b4cea7393e0fe99b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931051,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1MX0.XYIu7vC2CKYT57FM-hn2QSvEzlNOR8Xk6M2pqU0Qh0I"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"59cb1e300cd74977b4cea7393e0fe99b","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6a055b9-d9c7-42fa-a95a-12de754679c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6a055b9-d9c7-42fa-a95a-12de754679c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:09.183266889Z"}]},"request_id":"31d151ec-508a-47d4-8247-325c9521d9b4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931051.293315} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"59cb1e300cd74977b4cea7393e0fe99b","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6c1d6543-258e-4c03-be74-df0df9a274f0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931051.303698} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"59cb1e300cd74977b4cea7393e0fe99b","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6a055b9-d9c7-42fa-a95a-12de754679c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6a055b9-d9c7-42fa-a95a-12de754679c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:09.183266889Z"}]},"request_id":"1ff3ec53-47a1-4492-8be3-7c3d5cf25fa1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931051.316627} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"59cb1e300cd74977b4cea7393e0fe99b","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"59cb1e300cd74977b4cea7393e0fe99b"} gateway-1 | {"time_local":"21/Sep/2024:15:04:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f6a055b9-d9c7-42fa-a95a-12de754679c9? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.050","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"59cb1e300cd74977b4cea7393e0fe99b"} device-1 | {"level":"info","message":"PATCH /devices/f6a055b9-d9c7-42fa-a95a-12de754679c9? 200 44ms","method":"PATCH","requestID":"59cb1e300cd74977b4cea7393e0fe99b","responseTime":44,"status":200,"url":"/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1MX0.XYIu7vC2CKYT57FM-hn2QSvEzlNOR8Xk6M2pqU0Qh0I","level":"info","message":"auth send jwt","requestID":"38c2e644768b3670218368c030f56790"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"38c2e644768b3670218368c030f56790","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"38c2e644768b3670218368c030f56790"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":73,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":73,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.29702,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"38c2e644768b3670218368c030f56790","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931051,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1MX0.XYIu7vC2CKYT57FM-hn2QSvEzlNOR8Xk6M2pqU0Qh0I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"38c2e644768b3670218368c030f56790","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef1ef183-afbd-47f2-8e14-e328cbc0a788","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef1ef183-afbd-47f2-8e14-e328cbc0a788","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:09.128801508Z"}]},"request_id":"0234a19e-e1b4-477f-8c9a-bacb249a0d18","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931051.3481064} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"38c2e644768b3670218368c030f56790","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"38c2e644768b3670218368c030f56790"} gateway-1 | {"time_local":"21/Sep/2024:15:04:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"38c2e644768b3670218368c030f56790"} device-1 | {"level":"info","message":"GET /devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788? 200 22ms","method":"GET","requestID":"38c2e644768b3670218368c030f56790","responseTime":22,"status":200,"url":"/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1MX0.XYIu7vC2CKYT57FM-hn2QSvEzlNOR8Xk6M2pqU0Qh0I","level":"info","message":"auth send jwt","requestID":"f940fa61ebc31bc93afe86541021e10a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f940fa61ebc31bc93afe86541021e10a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f940fa61ebc31bc93afe86541021e10a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":74,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":74,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.233892,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f940fa61ebc31bc93afe86541021e10a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931051,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1MX0.XYIu7vC2CKYT57FM-hn2QSvEzlNOR8Xk6M2pqU0Qh0I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f940fa61ebc31bc93afe86541021e10a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6a055b9-d9c7-42fa-a95a-12de754679c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6a055b9-d9c7-42fa-a95a-12de754679c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:09.183266889Z"}]},"request_id":"9814c325-56da-4514-b202-5d06735987ac","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931051.377617} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f940fa61ebc31bc93afe86541021e10a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f940fa61ebc31bc93afe86541021e10a"} gateway-1 | {"time_local":"21/Sep/2024:15:04:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f6a055b9-d9c7-42fa-a95a-12de754679c9? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f940fa61ebc31bc93afe86541021e10a"} device-1 | {"level":"info","message":"GET /devices/f6a055b9-d9c7-42fa-a95a-12de754679c9? 200 20ms","method":"GET","requestID":"f940fa61ebc31bc93afe86541021e10a","responseTime":20,"status":200,"url":"/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1MX0.XYIu7vC2CKYT57FM-hn2QSvEzlNOR8Xk6M2pqU0Qh0I","level":"info","message":"auth send jwt","requestID":"e802f46925d53aa4c063437d9c35dbc9"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e802f46925d53aa4c063437d9c35dbc9","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"e802f46925d53aa4c063437d9c35dbc9"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":75,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":75,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.189241,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e802f46925d53aa4c063437d9c35dbc9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931051,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1MX0.XYIu7vC2CKYT57FM-hn2QSvEzlNOR8Xk6M2pqU0Qh0I"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e802f46925d53aa4c063437d9c35dbc9","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b"},"level":"info","message":"Attempting to run experiment","requestID":"e802f46925d53aa4c063437d9c35dbc9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b"},"level":"info","message":"Attempting to book experiment","requestID":"e802f46925d53aa4c063437d9c35dbc9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b"},"level":"info","message":"Successfully booked experiment","requestID":"e802f46925d53aa4c063437d9c35dbc9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c23b9920-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c23be740-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":76,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":76,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.603532,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c23b9920-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931051,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1MX0.XYIu7vC2CKYT57FM-hn2QSvEzlNOR8Xk6M2pqU0Qh0I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c23b9920-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45520","level":"info","msg":"Received request.","req_id":77,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"client_addr":"127.0.0.1:45520","level":"info","msg":"Sent response.","req_id":77,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.515425,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c23be740-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931051,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1MX0.XYIu7vC2CKYT57FM-hn2QSvEzlNOR8Xk6M2pqU0Qh0I"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"c23be740-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef1ef183-afbd-47f2-8e14-e328cbc0a788","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef1ef183-afbd-47f2-8e14-e328cbc0a788","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:09.128801508Z"}]},"request_id":"3db9da2d-13c8-41e3-9700-b218d5736bdd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931051.4541495} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c23b9920-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6a055b9-d9c7-42fa-a95a-12de754679c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6a055b9-d9c7-42fa-a95a-12de754679c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:09.183266889Z"}]},"request_id":"9f55637c-c9a9-4fd8-8fcb-10bd4e30dddc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931051.4600136} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c23b9920-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c23be740-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788? 200 20ms","method":"GET","requestID":"c23b9920-782a-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c23be740-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/f6a055b9-d9c7-42fa-a95a-12de754679c9? 200 22ms","method":"GET","requestID":"c23be740-782a-11ef-88d4-5fea3f61bb98","responseTime":22,"status":200,"url":"/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b"},"level":"info","message":"Setting up experiment","requestID":"e802f46925d53aa4c063437d9c35dbc9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"e802f46925d53aa4c063437d9c35dbc9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b"},"level":"info","message":"Successfully locked booking for experiment","requestID":"e802f46925d53aa4c063437d9c35dbc9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"e802f46925d53aa4c063437d9c35dbc9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"e802f46925d53aa4c063437d9c35dbc9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b"},"level":"info","message":"Attempting to update booking for experiment","requestID":"e802f46925d53aa4c063437d9c35dbc9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b"},"level":"info","message":"Successfully updated booking for experiment","requestID":"e802f46925d53aa4c063437d9c35dbc9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b"},"level":"info","message":"Successfully set up experiment","requestID":"e802f46925d53aa4c063437d9c35dbc9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c2462070-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c2464780-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c2466e90-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b"},"level":"info","message":"Successfully running experiment","requestID":"e802f46925d53aa4c063437d9c35dbc9"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":78,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":78,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.924825,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"client_addr":"127.0.0.1:45520","level":"info","msg":"Received request.","req_id":79,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c2462070-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931051,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1MX0.XYIu7vC2CKYT57FM-hn2QSvEzlNOR8Xk6M2pqU0Qh0I"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c2462070-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45520","level":"info","msg":"Sent response.","req_id":79,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.606982,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c2464780-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931051,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1MX0.XYIu7vC2CKYT57FM-hn2QSvEzlNOR8Xk6M2pqU0Qh0I"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c2464780-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45532","level":"info","msg":"Received request.","req_id":80,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6a055b9-d9c7-42fa-a95a-12de754679c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6a055b9-d9c7-42fa-a95a-12de754679c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:09.183266889Z"}]},"request_id":"95498e74-b8ae-4a90-84c3-dd5a3f42cdd4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931051.5278087} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef1ef183-afbd-47f2-8e14-e328cbc0a788","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"de92f2cb-8085-4da5-ba3b-4a3a272ddffd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931051.5281935} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"c2464780-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:45532","level":"info","msg":"Sent response.","req_id":80,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.355007,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef1ef183-afbd-47f2-8e14-e328cbc0a788","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef1ef183-afbd-47f2-8e14-e328cbc0a788","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:09.128801508Z"}]},"request_id":"718be2bd-2646-42d5-98c2-b4e81170d7c4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931051.5297697} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c2466e90-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 17ms","method":"POST","requestID":"c2466e90-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"c2462070-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c2464780-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/f6a055b9-d9c7-42fa-a95a-12de754679c9? 200 29ms","method":"GET","requestID":"c2464780-782a-11ef-88d4-5fea3f61bb98","responseTime":29,"status":200,"url":"/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0d0a0b1f-77a9-4139-b71e-f5a81f50732b#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0d0a0b1f-77a9-4139-b71e-f5a81f50732b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"9a177c4a-4bd3-4911-b359-61b447601686","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931051.5420535} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b6dbf34f-410e-4f3a-8324-9e81a3a0d39b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931051.5424979} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c2466e90-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788/signaling 200 32ms","method":"POST","requestID":"c2466e90-782a-11ef-88d4-5fea3f61bb98","responseTime":32,"status":200,"url":"/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c2462070-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"e802f46925d53aa4c063437d9c35dbc9","responseTime":25,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788? 200 35ms","method":"GET","requestID":"c2462070-782a-11ef-88d4-5fea3f61bb98","responseTime":35,"status":200,"url":"/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c24bc5c0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":81,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:11Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c24cb020-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6a055b9-d9c7-42fa-a95a-12de754679c9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b32bdaf6-baa4-4148-a05e-e69b4e46ef5b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931051.5548618} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":81,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.433738,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c24bc5c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c24bc5c0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"e802f46925d53aa4c063437d9c35dbc9"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":82,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:11Z"} experiment-1 | {"level":"info","message":"POST /experiments? 201 166ms","method":"POST","requestID":"e802f46925d53aa4c063437d9c35dbc9","responseTime":166,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c24bc5c0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef1ef183-afbd-47f2-8e14-e328cbc0a788","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f10ee687-fcd5-4c78-8dd2-fd578e7897ca","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931051.5625606} device-1 | {"level":"info","message":"POST /devices/f6a055b9-d9c7-42fa-a95a-12de754679c9/signaling 200 15ms","method":"POST","requestID":"c24bc5c0-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":82,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.912408,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c24cb020-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"c24cb020-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:04:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.173","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e802f46925d53aa4c063437d9c35dbc9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c24cb020-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788/signaling 200 16ms","method":"POST","requestID":"c24cb020-782a-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1MX0.XYIu7vC2CKYT57FM-hn2QSvEzlNOR8Xk6M2pqU0Qh0I","level":"info","message":"auth send jwt","requestID":"73257a4cef19a97187c0f237822808aa"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"73257a4cef19a97187c0f237822808aa","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"73257a4cef19a97187c0f237822808aa"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c24fbd60-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":83,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":83,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.93963,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"client_addr":"127.0.0.1:45520","level":"info","msg":"Received request.","req_id":84,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"73257a4cef19a97187c0f237822808aa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931051,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1MX0.XYIu7vC2CKYT57FM-hn2QSvEzlNOR8Xk6M2pqU0Qh0I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"73257a4cef19a97187c0f237822808aa","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6a055b9-d9c7-42fa-a95a-12de754679c9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4519ef36-e718-471c-9665-cc8ee3004100","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931051.579702} authorization-1 | {"client_addr":"127.0.0.1:45520","level":"info","msg":"Sent response.","req_id":84,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.91423,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c24fbd60-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c24fbd60-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef1ef183-afbd-47f2-8e14-e328cbc0a788","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef1ef183-afbd-47f2-8e14-e328cbc0a788","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:09.128801508Z"}]},"request_id":"3af4464a-6684-4c3e-8397-16b208680cc7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931051.5835302} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c24fbd60-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/f6a055b9-d9c7-42fa-a95a-12de754679c9/signaling 200 10ms","method":"POST","requestID":"c24fbd60-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"73257a4cef19a97187c0f237822808aa","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"e802f46925d53aa4c063437d9c35dbc9"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"73257a4cef19a97187c0f237822808aa"} gateway-1 | {"time_local":"21/Sep/2024:15:04:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"73257a4cef19a97187c0f237822808aa"} device-1 | {"level":"info","message":"GET /devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788? 200 16ms","method":"GET","requestID":"73257a4cef19a97187c0f237822808aa","responseTime":16,"status":200,"url":"/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c251e040-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c2522e60-782a-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1MX0.XYIu7vC2CKYT57FM-hn2QSvEzlNOR8Xk6M2pqU0Qh0I","level":"info","message":"auth send jwt","requestID":"99dc68f9f6be2bd6fce45eb008009715"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":85,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:11Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"99dc68f9f6be2bd6fce45eb008009715","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"99dc68f9f6be2bd6fce45eb008009715"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":85,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.944417,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"client_addr":"127.0.0.1:45520","level":"info","msg":"Received request.","req_id":86,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c251e040-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931051,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1MX0.XYIu7vC2CKYT57FM-hn2QSvEzlNOR8Xk6M2pqU0Qh0I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c251e040-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45520","level":"info","msg":"Sent response.","req_id":86,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.6844,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c2522e60-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931051,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1MX0.XYIu7vC2CKYT57FM-hn2QSvEzlNOR8Xk6M2pqU0Qh0I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c2522e60-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":87,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":87,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.90239,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"99dc68f9f6be2bd6fce45eb008009715","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931051,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1MX0.XYIu7vC2CKYT57FM-hn2QSvEzlNOR8Xk6M2pqU0Qh0I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"99dc68f9f6be2bd6fce45eb008009715","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef1ef183-afbd-47f2-8e14-e328cbc0a788","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef1ef183-afbd-47f2-8e14-e328cbc0a788","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:09.128801508Z"}]},"request_id":"a1a0edfb-d30a-4dd5-9a53-0bb76ceaeeb3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931051.6007495} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c251e040-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6a055b9-d9c7-42fa-a95a-12de754679c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6a055b9-d9c7-42fa-a95a-12de754679c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:09.183266889Z"}]},"request_id":"715de260-8d5e-4890-ab9e-7f8fc32ff9d0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931051.6031353} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c2522e60-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c251e040-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6a055b9-d9c7-42fa-a95a-12de754679c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6a055b9-d9c7-42fa-a95a-12de754679c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:09.183266889Z"}]},"request_id":"a950b3a4-a870-44c0-94b7-c9152beec903","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931051.6053166} device-1 | {"level":"info","message":"GET /devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788? 200 18ms","method":"GET","requestID":"c251e040-782a-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"99dc68f9f6be2bd6fce45eb008009715","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c2522e60-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/f6a055b9-d9c7-42fa-a95a-12de754679c9? 200 20ms","method":"GET","requestID":"c2522e60-782a-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"99dc68f9f6be2bd6fce45eb008009715"} device-1 | {"level":"info","message":"GET /devices/f6a055b9-d9c7-42fa-a95a-12de754679c9? 200 18ms","method":"GET","requestID":"99dc68f9f6be2bd6fce45eb008009715","responseTime":18,"status":200,"url":"/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f6a055b9-d9c7-42fa-a95a-12de754679c9? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"99dc68f9f6be2bd6fce45eb008009715"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b"},"level":"info","message":"Building connection plan","requestID":"e802f46925d53aa4c063437d9c35dbc9"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"515db686-b2f6-4129-bf66-67f0e241b5ea"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"a82e1700-22ec-46b2-98e6-61e43313c114"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"d7c3ca79-ec0a-4f72-9279-09a1b1834221"}]},"level":"info","message":"Built pairwise service configurations","requestID":"e802f46925d53aa4c063437d9c35dbc9"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"e802f46925d53aa4c063437d9c35dbc9"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"c25589c0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":88,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":88,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.686367,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c25589c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931051,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1MX0.XYIu7vC2CKYT57FM-hn2QSvEzlNOR8Xk6M2pqU0Qh0I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c25589c0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"5d4de435-3dc3-4694-91f2-81e1e99610fe","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931051.6242023} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"57d2fb1c-0baf-4b1c-800d-979097955c1d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931051.624373} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c25589c0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"c25589c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"c25589c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/99f9a829-adab-416b-a930-e367ce30a2ce'","requestID":"c25589c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/99f9a829-adab-416b-a930-e367ce30a2ce'","requestID":"c25589c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"c25589c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 26ms","method":"POST","requestID":"c25589c0-782a-11ef-88d4-5fea3f61bb98","responseTime":26,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"c25589c0-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"e802f46925d53aa4c063437d9c35dbc9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c25eb180-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":89,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef1ef183-afbd-47f2-8e14-e328cbc0a788","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ea9b4268-285c-4e9b-a8e4-ae7747270945","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931051.6771102} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":89,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.593968,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c25eb180-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c25eb180-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c25eb180-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788/signaling 200 11ms","method":"POST","requestID":"c25eb180-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788/signaling"} device-1 | {"device":"f6a055b9-d9c7-42fa-a95a-12de754679c9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"f6a055b9-d9c7-42fa-a95a-12de754679c9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c260fb70-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":90,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:11Z"} device-1 | {"content":{"sdp":"v=0\r\no=- 4267330037134859485 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:aiT7\r\na=ice-pwd:ofQXZYOApl+TWOnqG/DGCaqO\r\na=ice-options:trickle\r\na=fingerprint:sha-256 D3:9F:CB:1B:43:67:A4:C7:FB:0C:B6:37:1A:89:DA:86:88:23:E8:0F:D8:4B:94:DE:B6:76:09:67:06:31:D9:CF\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"f6a055b9-d9c7-42fa-a95a-12de754679c9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6a055b9-d9c7-42fa-a95a-12de754679c9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"686ba3a0-25f9-43d4-b32a-6d1334b7ebcf","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931051.6933124} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":90,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.333784,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c260fb70-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c260fb70-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c260fb70-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/f6a055b9-d9c7-42fa-a95a-12de754679c9/signaling 200 12ms","method":"POST","requestID":"c260fb70-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9/signaling"} device-1 | {"device":"f6a055b9-d9c7-42fa-a95a-12de754679c9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"ef1ef183-afbd-47f2-8e14-e328cbc0a788","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"99f9a829-adab-416b-a930-e367ce30a2ce","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"ef1ef183-afbd-47f2-8e14-e328cbc0a788","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"ef1ef183-afbd-47f2-8e14-e328cbc0a788","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"ef1ef183-afbd-47f2-8e14-e328cbc0a788","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"ef1ef183-afbd-47f2-8e14-e328cbc0a788","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/99f9a829-adab-416b-a930-e367ce30a2ce' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"99f9a829-adab-416b-a930-e367ce30a2ce","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"32a194c84bf44ba77dbe3e8bb5b17d22","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"32a194c84bf44ba77dbe3e8bb5b17d22","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/99f9a829-adab-416b-a930-e367ce30a2ce"}}},"level":"info","message":"received a callback","requestID":"32a194c84bf44ba77dbe3e8bb5b17d22"} gateway-1 | {"time_local":"21/Sep/2024:15:04:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch","requestID":"32a194c84bf44ba77dbe3e8bb5b17d22"} device-1 | {"content":{"candidate":"candidate:488482690 1 udp 2113937151 05f88263-65d3-49d2-871b-b2be89761467.local 40789 typ host generation 0 ufrag aiT7 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f6a055b9-d9c7-42fa-a95a-12de754679c9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"32a194c84bf44ba77dbe3e8bb5b17d22","responseTime":11,"status":200,"url":"/callbacks/experiment"} device-1 | {"content":{"candidate":"candidate:2570112509 1 udp 1677729535 141.24.211.56 40789 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag aiT7 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f6a055b9-d9c7-42fa-a95a-12de754679c9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3393024630 1 udp 33562623 141.24.210.113 55218 typ relay raddr 141.24.211.56 rport 40789 generation 0 ufrag aiT7 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f6a055b9-d9c7-42fa-a95a-12de754679c9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"f6a055b9-d9c7-42fa-a95a-12de754679c9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9'"} device-1 | {"data":{"peerconnection":"99f9a829-adab-416b-a930-e367ce30a2ce","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"ef1ef183-afbd-47f2-8e14-e328cbc0a788","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f6a055b9-d9c7-42fa-a95a-12de754679c9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"ef1ef183-afbd-47f2-8e14-e328cbc0a788","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"99f9a829-adab-416b-a930-e367ce30a2ce","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/99f9a829-adab-416b-a930-e367ce30a2ce' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"99f9a829-adab-416b-a930-e367ce30a2ce","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"74829a4436fd72b37beb2a0fcfa03773","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"74829a4436fd72b37beb2a0fcfa03773","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/99f9a829-adab-416b-a930-e367ce30a2ce"}}},"level":"info","message":"received a callback","requestID":"74829a4436fd72b37beb2a0fcfa03773"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"c3a16ab0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":91,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:13Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F99f9a829-adab-416b-a930-e367ce30a2ce","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9c9e59fe-7a2d-4289-a149-992deadd7e1d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931053.7965083} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":91,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.196844,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/99f9a829-adab-416b-a930-e367ce30a2ce","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c3a16ab0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/99f9a829-adab-416b-a930-e367ce30a2ce","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"c3a16ab0-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"c3a16ab0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/99f9a829-adab-416b-a930-e367ce30a2ce 200 17ms","method":"GET","requestID":"c3a16ab0-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/peerconnections/99f9a829-adab-416b-a930-e367ce30a2ce"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 55ms","method":"POST","requestID":"74829a4436fd72b37beb2a0fcfa03773","responseTime":55,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.059","http_referrer":"","http_user_agent":"node-fetch","requestID":"74829a4436fd72b37beb2a0fcfa03773"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c3a86f90-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":92,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:13Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef1ef183-afbd-47f2-8e14-e328cbc0a788","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e2b1d2d5-d6c4-4a04-8c22-739793ee1ac0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931053.8407967} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":92,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.714436,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c3a86f90-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"c3a86f90-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c3a86f90-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788/signaling 200 15ms","method":"POST","requestID":"c3a86f90-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c3ab2eb0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":93,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:13Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6a055b9-d9c7-42fa-a95a-12de754679c9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1e0e394b-9b3a-41c1-bbf9-1afdfb8a3a98","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931053.8591537} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":93,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.841223,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c3ab2eb0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1M30.M1Z_uRKMudgVoA9bc2o3ixzSJqH2otAG2AjH1Jm9ex4","level":"info","message":"auth send jwt","requestID":"a7c7b20a51d4364352c62662bfd9ad7b"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"c3ab2eb0-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a7c7b20a51d4364352c62662bfd9ad7b","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b","requestID":"a7c7b20a51d4364352c62662bfd9ad7b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c3ab2eb0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/f6a055b9-d9c7-42fa-a95a-12de754679c9/signaling 200 17ms","method":"POST","requestID":"c3ab2eb0-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":94,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:13Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":94,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.352474,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a7c7b20a51d4364352c62662bfd9ad7b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931053,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1M30.M1Z_uRKMudgVoA9bc2o3ixzSJqH2otAG2AjH1Jm9ex4"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"a7c7b20a51d4364352c62662bfd9ad7b","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b","requestID":"a7c7b20a51d4364352c62662bfd9ad7b"} gateway-1 | {"time_local":"21/Sep/2024:15:04:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b HTTP/1.1","status": "200","body_bytes_sent":"885","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a7c7b20a51d4364352c62662bfd9ad7b"} experiment-1 | {"level":"info","message":"GET /experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b 200 19ms","method":"GET","requestID":"a7c7b20a51d4364352c62662bfd9ad7b","responseTime":19,"status":200,"url":"/experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1M30.M1Z_uRKMudgVoA9bc2o3ixzSJqH2otAG2AjH1Jm9ex4","level":"info","message":"auth send jwt","requestID":"0ce68162ff89b5bd0d9eb09331c2562c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0ce68162ff89b5bd0d9eb09331c2562c","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b","requestID":"0ce68162ff89b5bd0d9eb09331c2562c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":95,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:13Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":95,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.243424,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:13Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0ce68162ff89b5bd0d9eb09331c2562c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931053,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1M30.M1Z_uRKMudgVoA9bc2o3ixzSJqH2otAG2AjH1Jm9ex4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0ce68162ff89b5bd0d9eb09331c2562c","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b"},"level":"info","message":"Attempting to finish experiment","requestID":"0ce68162ff89b5bd0d9eb09331c2562c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"c3b4cba0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":96,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:13Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":96,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.467124,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:13Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/99f9a829-adab-416b-a930-e367ce30a2ce","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c3b4cba0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/99f9a829-adab-416b-a930-e367ce30a2ce","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931053,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1M30.M1Z_uRKMudgVoA9bc2o3ixzSJqH2otAG2AjH1Jm9ex4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"c3b4cba0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/99f9a829-adab-416b-a930-e367ce30a2ce","device":"f6a055b9-d9c7-42fa-a95a-12de754679c9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"ef1ef183-afbd-47f2-8e14-e328cbc0a788","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"ef1ef183-afbd-47f2-8e14-e328cbc0a788","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"ef1ef183-afbd-47f2-8e14-e328cbc0a788","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/99f9a829-adab-416b-a930-e367ce30a2ce' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/99f9a829-adab-416b-a930-e367ce30a2ce' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"99f9a829-adab-416b-a930-e367ce30a2ce","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2d90cda0b47895bb28f645673fca652d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2d90cda0b47895bb28f645673fca652d","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"358c289b61870c20350722db666116c8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"358c289b61870c20350722db666116c8","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/99f9a829-adab-416b-a930-e367ce30a2ce"}}},"level":"info","message":"received a callback","requestID":"2d90cda0b47895bb28f645673fca652d"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F99f9a829-adab-416b-a930-e367ce30a2ce': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F99f9a829-adab-416b-a930-e367ce30a2ce","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"a8845d52-55ce-4967-9eab-1f6cec40f6a7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931053.956188} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/99f9a829-adab-416b-a930-e367ce30a2ce"}}},"level":"info","message":"received a callback","requestID":"358c289b61870c20350722db666116c8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"21304bd7-ccdd-47a0-918d-11d0041988e1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931053.956837} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"c3b4cba0-782a-11ef-88d4-5fea3f61bb98","responseTime":22,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"99f9a829-adab-416b-a930-e367ce30a2ce","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"c3b4cba0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/99f9a829-adab-416b-a930-e367ce30a2ce 204 67ms","method":"DELETE","requestID":"c3b4cba0-782a-11ef-88d4-5fea3f61bb98","responseTime":67,"status":204,"url":"/peerconnections/99f9a829-adab-416b-a930-e367ce30a2ce"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b"},"level":"info","message":"Successfully finished experiment","requestID":"0ce68162ff89b5bd0d9eb09331c2562c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c3c371a0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":97,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef1ef183-afbd-47f2-8e14-e328cbc0a788","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3062e5cf-f1c2-4432-8ad7-f7e576532553","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.019281} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":97,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.651714,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c3c371a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"c3c371a0-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c3c371a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788/signaling 200 18ms","method":"POST","requestID":"c3c371a0-782a-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0d0a0b1f-77a9-4139-b71e-f5a81f50732b': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0d0a0b1f-77a9-4139-b71e-f5a81f50732b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"88750b17-4505-4683-9b2d-1d99a6ed20dd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.0303674} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8b50ab46-6d71-47ea-b429-65f1db693dbe","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.0309353} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c3c6f410-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"0ce68162ff89b5bd0d9eb09331c2562c","responseTime":27,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":98,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6a055b9-d9c7-42fa-a95a-12de754679c9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5873abe1-e8f3-4ffe-ae97-dcc5fe73e96c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.0418704} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":98,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.987229,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c3c6f410-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"c3c6f410-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c3c6f410-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/f6a055b9-d9c7-42fa-a95a-12de754679c9/signaling 200 17ms","method":"POST","requestID":"c3c6f410-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b","requestID":"0ce68162ff89b5bd0d9eb09331c2562c"} gateway-1 | {"time_local":"21/Sep/2024:15:04:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.226","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0ce68162ff89b5bd0d9eb09331c2562c"} experiment-1 | {"level":"info","message":"DELETE /experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b 204 223ms","method":"DELETE","requestID":"0ce68162ff89b5bd0d9eb09331c2562c","responseTime":223,"status":204,"url":"/experiments/0d0a0b1f-77a9-4139-b71e-f5a81f50732b"} gateway-1 | {"time_local":"21/Sep/2024:15:04:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3422","request_time":"4.378","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"3e36ff26fecb30878062abfec13b829e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 163ms","method":"POST","requestID":"2d90cda0b47895bb28f645673fca652d","responseTime":163,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 162ms","method":"POST","requestID":"358c289b61870c20350722db666116c8","responseTime":162,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.170","http_referrer":"","http_user_agent":"node-fetch","requestID":"2d90cda0b47895bb28f645673fca652d"} gateway-1 | {"time_local":"21/Sep/2024:15:04:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.170","http_referrer":"","http_user_agent":"node-fetch","requestID":"358c289b61870c20350722db666116c8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NH0.c_RtjaGTNggkdGhSNC8qme-HM7aIUCjXX3AUOLkQcwg","level":"info","message":"auth send jwt","requestID":"e6a302d12e9d8b7a121af6447c0afe02"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e6a302d12e9d8b7a121af6447c0afe02","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e6a302d12e9d8b7a121af6447c0afe02"} gateway-1 | {"time_local":"21/Sep/2024:15:04:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2886","request_time":"2.896","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3e8a87a9712e9162e2ee2d7995f0a36c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":99,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":99,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.988926,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:14Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/ef1ef183-afbd-47f2-8e14-e328cbc0a788' closed"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e6a302d12e9d8b7a121af6447c0afe02","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931054,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NH0.c_RtjaGTNggkdGhSNC8qme-HM7aIUCjXX3AUOLkQcwg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e6a302d12e9d8b7a121af6447c0afe02","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/f6a055b9-d9c7-42fa-a95a-12de754679c9' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1a49b8e-7f14-483b-87c8-aab0d53d5250","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"60669cd2-89cf-439a-9bcb-d2248b508740","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.1459067} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e6a302d12e9d8b7a121af6447c0afe02","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"16f1bdc3-6aa7-489e-9ecc-d52610751070","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.1532836} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"e6a302d12e9d8b7a121af6447c0afe02","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1a49b8e-7f14-483b-87c8-aab0d53d5250","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"4b9190ec-e27b-4319-9ccb-a4f2eee92261","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.164203} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"280c809f-c6b9-40ba-a51d-0ea1926cdc41","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.16449} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"e6a302d12e9d8b7a121af6447c0afe02","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1a49b8e-7f14-483b-87c8-aab0d53d5250","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1a49b8e-7f14-483b-87c8-aab0d53d5250","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:14.164188449Z"}]},"request_id":"4d1549ae-9cd2-4e27-a23a-59bbbf118918","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.1699097} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e6a302d12e9d8b7a121af6447c0afe02","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e6a302d12e9d8b7a121af6447c0afe02"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"e6a302d12e9d8b7a121af6447c0afe02","responseTime":49,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e6a302d12e9d8b7a121af6447c0afe02"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NH0.c_RtjaGTNggkdGhSNC8qme-HM7aIUCjXX3AUOLkQcwg","level":"info","message":"auth send jwt","requestID":"9f74ad8a91ada7d912ef5c557fa7be32"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9f74ad8a91ada7d912ef5c557fa7be32","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9f74ad8a91ada7d912ef5c557fa7be32"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":100,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":100,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.741049,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"9f74ad8a91ada7d912ef5c557fa7be32","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931054,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NH0.c_RtjaGTNggkdGhSNC8qme-HM7aIUCjXX3AUOLkQcwg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9f74ad8a91ada7d912ef5c557fa7be32","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03246b98-61d4-40a0-9d38-c4abfab47540","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"bca89d76-cf64-4b59-9e2c-1fc45fa01cb4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.2016711} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9f74ad8a91ada7d912ef5c557fa7be32","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f2856ee7-dc1b-4460-be75-ec4ab3658608","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.2069829} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"9f74ad8a91ada7d912ef5c557fa7be32","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03246b98-61d4-40a0-9d38-c4abfab47540","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"ec827c01-613d-4f13-afa0-28e0c681cd3d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.2191648} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9d8167aa-2f67-4791-84d3-767ee1dde1d8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.219423} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"9f74ad8a91ada7d912ef5c557fa7be32","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03246b98-61d4-40a0-9d38-c4abfab47540","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03246b98-61d4-40a0-9d38-c4abfab47540","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:14.219149400Z"}]},"request_id":"231e48c0-0ed2-482a-96e0-ce7e61488d9e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.2255907} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9f74ad8a91ada7d912ef5c557fa7be32","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9f74ad8a91ada7d912ef5c557fa7be32"} gateway-1 | {"time_local":"21/Sep/2024:15:04:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9f74ad8a91ada7d912ef5c557fa7be32"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"9f74ad8a91ada7d912ef5c557fa7be32","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NH0.c_RtjaGTNggkdGhSNC8qme-HM7aIUCjXX3AUOLkQcwg","level":"info","message":"auth send jwt","requestID":"68c2a2b7e616ae3b5d724f37429134f6"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"68c2a2b7e616ae3b5d724f37429134f6","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NH0.c_RtjaGTNggkdGhSNC8qme-HM7aIUCjXX3AUOLkQcwg","level":"info","message":"auth send jwt","requestID":"dfbc28d586b38924014a5c16d9491144"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"dfbc28d586b38924014a5c16d9491144","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"68c2a2b7e616ae3b5d724f37429134f6"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"dfbc28d586b38924014a5c16d9491144"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":101,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":101,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.695922,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"client_addr":"127.0.0.1:45520","level":"info","msg":"Received request.","req_id":102,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"68c2a2b7e616ae3b5d724f37429134f6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931054,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NH0.c_RtjaGTNggkdGhSNC8qme-HM7aIUCjXX3AUOLkQcwg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"68c2a2b7e616ae3b5d724f37429134f6","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45520","level":"info","msg":"Sent response.","req_id":102,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.595745,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dfbc28d586b38924014a5c16d9491144","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931054,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NH0.c_RtjaGTNggkdGhSNC8qme-HM7aIUCjXX3AUOLkQcwg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"dfbc28d586b38924014a5c16d9491144","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1a49b8e-7f14-483b-87c8-aab0d53d5250","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1a49b8e-7f14-483b-87c8-aab0d53d5250","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:14.164188449Z"}]},"request_id":"3270a3c8-e38f-4bed-b85b-bc6418ee3036","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.7051468} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"68c2a2b7e616ae3b5d724f37429134f6","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03246b98-61d4-40a0-9d38-c4abfab47540","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03246b98-61d4-40a0-9d38-c4abfab47540","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:14.219149400Z"}]},"request_id":"37793b9a-a17b-4a0e-a7db-c2fc8db804e8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.7058585} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dfbc28d586b38924014a5c16d9491144","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"14ede8fb-3ab4-41dc-9bc3-bc2adf0bb71b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.7104886} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"68c2a2b7e616ae3b5d724f37429134f6","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b5a25ee7-293f-4dc9-8347-4be3583f1afb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.711589} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"dfbc28d586b38924014a5c16d9491144","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03246b98-61d4-40a0-9d38-c4abfab47540","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03246b98-61d4-40a0-9d38-c4abfab47540","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:14.219149400Z"}]},"request_id":"db9757b7-4ae5-4d23-b169-91e56e04eba1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.7148812} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"dfbc28d586b38924014a5c16d9491144","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"dfbc28d586b38924014a5c16d9491144"} gateway-1 | {"time_local":"21/Sep/2024:15:04:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/03246b98-61d4-40a0-9d38-c4abfab47540 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.033","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"dfbc28d586b38924014a5c16d9491144"} device-1 | {"level":"info","message":"PATCH /devices/03246b98-61d4-40a0-9d38-c4abfab47540 200 23ms","method":"PATCH","requestID":"dfbc28d586b38924014a5c16d9491144","responseTime":23,"status":200,"url":"/devices/03246b98-61d4-40a0-9d38-c4abfab47540"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NH0.c_RtjaGTNggkdGhSNC8qme-HM7aIUCjXX3AUOLkQcwg","level":"info","message":"auth send jwt","requestID":"d6d1ef41a47be580e936828d1c26d72e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d6d1ef41a47be580e936828d1c26d72e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d6d1ef41a47be580e936828d1c26d72e"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1a49b8e-7f14-483b-87c8-aab0d53d5250","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1a49b8e-7f14-483b-87c8-aab0d53d5250","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:14.164188449Z"}]},"request_id":"bbc4d90c-2e60-4a42-be5c-112c89351bfa","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.7259443} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"68c2a2b7e616ae3b5d724f37429134f6","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":103,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":103,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.724953,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:14Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"68c2a2b7e616ae3b5d724f37429134f6"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d6d1ef41a47be580e936828d1c26d72e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931054,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NH0.c_RtjaGTNggkdGhSNC8qme-HM7aIUCjXX3AUOLkQcwg"} gateway-1 | {"time_local":"21/Sep/2024:15:04:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.045","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"68c2a2b7e616ae3b5d724f37429134f6"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d6d1ef41a47be580e936828d1c26d72e","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"PATCH /devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250 200 37ms","method":"PATCH","requestID":"68c2a2b7e616ae3b5d724f37429134f6","responseTime":37,"status":200,"url":"/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NH0.c_RtjaGTNggkdGhSNC8qme-HM7aIUCjXX3AUOLkQcwg","level":"info","message":"auth send jwt","requestID":"696dc9d98832439be5275121f670ff67"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"696dc9d98832439be5275121f670ff67","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"696dc9d98832439be5275121f670ff67"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":104,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":104,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.890241,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"696dc9d98832439be5275121f670ff67","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931054,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NH0.c_RtjaGTNggkdGhSNC8qme-HM7aIUCjXX3AUOLkQcwg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"696dc9d98832439be5275121f670ff67","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d6d1ef41a47be580e936828d1c26d72e"} device-1 | {"level":"info","message":"POST /devices/03246b98-61d4-40a0-9d38-c4abfab47540/websocket 200 19ms","method":"POST","requestID":"d6d1ef41a47be580e936828d1c26d72e","responseTime":19,"status":200,"url":"/devices/03246b98-61d4-40a0-9d38-c4abfab47540/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:04:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/03246b98-61d4-40a0-9d38-c4abfab47540/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"d6d1ef41a47be580e936828d1c26d72e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"696dc9d98832439be5275121f670ff67"} gateway-1 | {"time_local":"21/Sep/2024:15:04:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"696dc9d98832439be5275121f670ff67"} device-1 | {"level":"info","message":"POST /devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250/websocket 200 19ms","method":"POST","requestID":"696dc9d98832439be5275121f670ff67","responseTime":19,"status":200,"url":"/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NH0.c_RtjaGTNggkdGhSNC8qme-HM7aIUCjXX3AUOLkQcwg","level":"info","message":"auth send jwt","requestID":"6112f0d758bad0eb9feac65add3c71d3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6112f0d758bad0eb9feac65add3c71d3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6112f0d758bad0eb9feac65add3c71d3"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":105,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":105,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.767163,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"6112f0d758bad0eb9feac65add3c71d3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931054,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NH0.c_RtjaGTNggkdGhSNC8qme-HM7aIUCjXX3AUOLkQcwg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6112f0d758bad0eb9feac65add3c71d3","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1a49b8e-7f14-483b-87c8-aab0d53d5250","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1a49b8e-7f14-483b-87c8-aab0d53d5250","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:14.164188449Z"}]},"request_id":"98782565-f042-4e26-82ca-3b1690f3ecfd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.7894309} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6112f0d758bad0eb9feac65add3c71d3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6112f0d758bad0eb9feac65add3c71d3"} gateway-1 | {"time_local":"21/Sep/2024:15:04:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6112f0d758bad0eb9feac65add3c71d3"} device-1 | {"level":"info","message":"GET /devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250? 200 12ms","method":"GET","requestID":"6112f0d758bad0eb9feac65add3c71d3","responseTime":12,"status":200,"url":"/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NH0.c_RtjaGTNggkdGhSNC8qme-HM7aIUCjXX3AUOLkQcwg","level":"info","message":"auth send jwt","requestID":"6d309be7f1f3aeec2722012187c1db54"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6d309be7f1f3aeec2722012187c1db54","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6d309be7f1f3aeec2722012187c1db54"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":106,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":106,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.055423,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"6d309be7f1f3aeec2722012187c1db54","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931054,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NH0.c_RtjaGTNggkdGhSNC8qme-HM7aIUCjXX3AUOLkQcwg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6d309be7f1f3aeec2722012187c1db54","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03246b98-61d4-40a0-9d38-c4abfab47540","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03246b98-61d4-40a0-9d38-c4abfab47540","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:14.219149400Z"}]},"request_id":"ea77e725-769a-4441-abbc-614b9eac81ba","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.80736} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6d309be7f1f3aeec2722012187c1db54","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6d309be7f1f3aeec2722012187c1db54"} gateway-1 | {"time_local":"21/Sep/2024:15:04:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/03246b98-61d4-40a0-9d38-c4abfab47540? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6d309be7f1f3aeec2722012187c1db54"} device-1 | {"level":"info","message":"GET /devices/03246b98-61d4-40a0-9d38-c4abfab47540? 200 12ms","method":"GET","requestID":"6d309be7f1f3aeec2722012187c1db54","responseTime":12,"status":200,"url":"/devices/03246b98-61d4-40a0-9d38-c4abfab47540?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NH0.c_RtjaGTNggkdGhSNC8qme-HM7aIUCjXX3AUOLkQcwg","level":"info","message":"auth send jwt","requestID":"50a9fb57d3bce63825327f3fa644ea50"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"50a9fb57d3bce63825327f3fa644ea50","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"50a9fb57d3bce63825327f3fa644ea50"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":107,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":107,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.075806,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"50a9fb57d3bce63825327f3fa644ea50","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931054,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NH0.c_RtjaGTNggkdGhSNC8qme-HM7aIUCjXX3AUOLkQcwg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"50a9fb57d3bce63825327f3fa644ea50","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/846b1a35-5147-4095-b8e6-3399f1445736"},"level":"info","message":"Attempting to run experiment","requestID":"50a9fb57d3bce63825327f3fa644ea50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/846b1a35-5147-4095-b8e6-3399f1445736"},"level":"info","message":"Attempting to book experiment","requestID":"50a9fb57d3bce63825327f3fa644ea50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/846b1a35-5147-4095-b8e6-3399f1445736"},"level":"info","message":"Successfully booked experiment","requestID":"50a9fb57d3bce63825327f3fa644ea50"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c44572e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c445c100-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":108,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":108,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.600815,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c44572e0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931054,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NH0.c_RtjaGTNggkdGhSNC8qme-HM7aIUCjXX3AUOLkQcwg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c44572e0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45520","level":"info","msg":"Received request.","req_id":109,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"client_addr":"127.0.0.1:45520","level":"info","msg":"Sent response.","req_id":109,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.592026,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c445c100-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931054,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NH0.c_RtjaGTNggkdGhSNC8qme-HM7aIUCjXX3AUOLkQcwg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c445c100-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1a49b8e-7f14-483b-87c8-aab0d53d5250","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1a49b8e-7f14-483b-87c8-aab0d53d5250","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:14.164188449Z"}]},"request_id":"c3d17727-1f0f-46a8-972c-d13888b87c5c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.8711503} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c44572e0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03246b98-61d4-40a0-9d38-c4abfab47540","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03246b98-61d4-40a0-9d38-c4abfab47540","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:14.219149400Z"}]},"request_id":"9cfb75b0-da99-4847-a9b6-a35f257bd708","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.8719156} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c445c100-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c44572e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250? 200 17ms","method":"GET","requestID":"c44572e0-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c445c100-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/03246b98-61d4-40a0-9d38-c4abfab47540? 200 16ms","method":"GET","requestID":"c445c100-782a-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/03246b98-61d4-40a0-9d38-c4abfab47540?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/846b1a35-5147-4095-b8e6-3399f1445736"},"level":"info","message":"Setting up experiment","requestID":"50a9fb57d3bce63825327f3fa644ea50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/846b1a35-5147-4095-b8e6-3399f1445736"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"50a9fb57d3bce63825327f3fa644ea50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/846b1a35-5147-4095-b8e6-3399f1445736"},"level":"info","message":"Successfully locked booking for experiment","requestID":"50a9fb57d3bce63825327f3fa644ea50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/846b1a35-5147-4095-b8e6-3399f1445736"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"50a9fb57d3bce63825327f3fa644ea50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/846b1a35-5147-4095-b8e6-3399f1445736"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"50a9fb57d3bce63825327f3fa644ea50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/846b1a35-5147-4095-b8e6-3399f1445736"},"level":"info","message":"Attempting to update booking for experiment","requestID":"50a9fb57d3bce63825327f3fa644ea50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/846b1a35-5147-4095-b8e6-3399f1445736"},"level":"info","message":"Successfully updated booking for experiment","requestID":"50a9fb57d3bce63825327f3fa644ea50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/846b1a35-5147-4095-b8e6-3399f1445736"},"level":"info","message":"Successfully set up experiment","requestID":"50a9fb57d3bce63825327f3fa644ea50"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c451cef0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c4521d10-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c4529240-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/846b1a35-5147-4095-b8e6-3399f1445736"},"level":"info","message":"Successfully running experiment","requestID":"50a9fb57d3bce63825327f3fa644ea50"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":110,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":110,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.916117,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c451cef0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931054,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NH0.c_RtjaGTNggkdGhSNC8qme-HM7aIUCjXX3AUOLkQcwg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c451cef0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45520","level":"info","msg":"Received request.","req_id":111,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"client_addr":"127.0.0.1:45520","level":"info","msg":"Sent response.","req_id":111,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.872743,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c4521d10-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931054,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NH0.c_RtjaGTNggkdGhSNC8qme-HM7aIUCjXX3AUOLkQcwg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c4521d10-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":112,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":112,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.689612,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1a49b8e-7f14-483b-87c8-aab0d53d5250","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d2dca198-41e3-43f9-859b-377066c63b38","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.9557428} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c4529240-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"c4529240-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03246b98-61d4-40a0-9d38-c4abfab47540","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03246b98-61d4-40a0-9d38-c4abfab47540","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:14.219149400Z"}]},"request_id":"e817c435-6035-4d38-9702-3677dc0d8642","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.9584756} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"c4521d10-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c4529240-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1a49b8e-7f14-483b-87c8-aab0d53d5250","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1a49b8e-7f14-483b-87c8-aab0d53d5250","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:14.164188449Z"}]},"request_id":"f18543c7-f233-4c75-afd8-ddc08a9ec3d5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.9627755} device-1 | {"level":"info","message":"POST /devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250/signaling 200 15ms","method":"POST","requestID":"c4529240-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c451cef0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c4557870-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c4521d10-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":113,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:14Z"} device-1 | {"level":"info","message":"GET /devices/03246b98-61d4-40a0-9d38-c4abfab47540? 200 27ms","method":"GET","requestID":"c4521d10-782a-11ef-88d4-5fea3f61bb98","responseTime":27,"status":200,"url":"/devices/03246b98-61d4-40a0-9d38-c4abfab47540?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c451cef0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250? 200 30ms","method":"GET","requestID":"c451cef0-782a-11ef-88d4-5fea3f61bb98","responseTime":30,"status":200,"url":"/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03246b98-61d4-40a0-9d38-c4abfab47540","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"022a20a9-abcd-42c0-93be-3b1aa772c00f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.9732642} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":113,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.645991,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c4557870-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c456d800-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c4557870-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F846b1a35-5147-4095-b8e6-3399f1445736#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F846b1a35-5147-4095-b8e6-3399f1445736","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"b684a494-fe7c-4ec9-ba46-8d5028df70d5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.9748352} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eb0596c9-17da-44e2-bd36-ee54002b843b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.9754174} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"50a9fb57d3bce63825327f3fa644ea50","responseTime":25,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c4557870-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/03246b98-61d4-40a0-9d38-c4abfab47540/signaling 200 14ms","method":"POST","requestID":"c4557870-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/03246b98-61d4-40a0-9d38-c4abfab47540/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":114,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1a49b8e-7f14-483b-87c8-aab0d53d5250","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"49bac645-a844-4a7f-ad9a-409bd595ddf2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.9837377} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":114,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.049291,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c456d800-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c456d800-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c456d800-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250/signaling 200 13ms","method":"POST","requestID":"c456d800-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/846b1a35-5147-4095-b8e6-3399f1445736","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"50a9fb57d3bce63825327f3fa644ea50"} gateway-1 | {"time_local":"21/Sep/2024:15:04:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"816","request_time":"0.177","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"50a9fb57d3bce63825327f3fa644ea50"} experiment-1 | {"level":"info","message":"POST /experiments? 201 173ms","method":"POST","requestID":"50a9fb57d3bce63825327f3fa644ea50","responseTime":173,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c4597010-782a-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NH0.c_RtjaGTNggkdGhSNC8qme-HM7aIUCjXX3AUOLkQcwg","level":"info","message":"auth send jwt","requestID":"bfc40cd5f8801cc2e491f97d0734dd69"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bfc40cd5f8801cc2e491f97d0734dd69","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bfc40cd5f8801cc2e491f97d0734dd69"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":115,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"client_addr":"127.0.0.1:45520","level":"info","msg":"Received request.","req_id":116,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03246b98-61d4-40a0-9d38-c4abfab47540","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ad79959d-7a45-48a0-8eb6-774379e7a487","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931054.9983258} authorization-1 | {"client_addr":"127.0.0.1:45520","level":"info","msg":"Sent response.","req_id":116,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.805204,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":115,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.201537,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bfc40cd5f8801cc2e491f97d0734dd69","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931054,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NH0.c_RtjaGTNggkdGhSNC8qme-HM7aIUCjXX3AUOLkQcwg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bfc40cd5f8801cc2e491f97d0734dd69","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c4597010-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c4597010-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1a49b8e-7f14-483b-87c8-aab0d53d5250","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1a49b8e-7f14-483b-87c8-aab0d53d5250","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:14.164188449Z"}]},"request_id":"10a5d39e-22f4-47bd-aca4-9fc6ab0b8044","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931055.0045304} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c4597010-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/03246b98-61d4-40a0-9d38-c4abfab47540/signaling 200 12ms","method":"POST","requestID":"c4597010-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/03246b98-61d4-40a0-9d38-c4abfab47540/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bfc40cd5f8801cc2e491f97d0734dd69","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/846b1a35-5147-4095-b8e6-3399f1445736"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"50a9fb57d3bce63825327f3fa644ea50"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c45b92f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c45be110-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":117,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:15Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bfc40cd5f8801cc2e491f97d0734dd69"} gateway-1 | {"time_local":"21/Sep/2024:15:04:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bfc40cd5f8801cc2e491f97d0734dd69"} device-1 | {"level":"info","message":"GET /devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250? 200 16ms","method":"GET","requestID":"bfc40cd5f8801cc2e491f97d0734dd69","responseTime":16,"status":200,"url":"/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250?"} authorization-1 | {"client_addr":"127.0.0.1:45520","level":"info","msg":"Received request.","req_id":118,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:15Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":117,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.936251,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c45b92f0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931054,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NH0.c_RtjaGTNggkdGhSNC8qme-HM7aIUCjXX3AUOLkQcwg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c45b92f0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45520","level":"info","msg":"Sent response.","req_id":118,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.701589,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c45be110-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931054,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NH0.c_RtjaGTNggkdGhSNC8qme-HM7aIUCjXX3AUOLkQcwg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c45be110-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NX0.3kEVSaDiYjavxxZhrJEc7OvaEJ0p0IIm-DozJXMg3eg","level":"info","message":"auth send jwt","requestID":"dcd5f05138aaa3ed8a7fa2a063a51341"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"dcd5f05138aaa3ed8a7fa2a063a51341","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dcd5f05138aaa3ed8a7fa2a063a51341"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1a49b8e-7f14-483b-87c8-aab0d53d5250","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1a49b8e-7f14-483b-87c8-aab0d53d5250","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:14.164188449Z"}]},"request_id":"8f8dc3bc-a4e7-4703-bc80-815ea1332a8a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931055.0186353} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c45b92f0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03246b98-61d4-40a0-9d38-c4abfab47540","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03246b98-61d4-40a0-9d38-c4abfab47540","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:14.219149400Z"}]},"request_id":"b1debd42-0eca-487a-86a9-119990a2bc53","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931055.0202181} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c45be110-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":119,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:15Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c45b92f0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":119,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.683648,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:15Z"} device-1 | {"level":"info","message":"GET /devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250? 200 18ms","method":"GET","requestID":"c45b92f0-782a-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dcd5f05138aaa3ed8a7fa2a063a51341","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931055,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NX0.3kEVSaDiYjavxxZhrJEc7OvaEJ0p0IIm-DozJXMg3eg"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c45be110-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/03246b98-61d4-40a0-9d38-c4abfab47540? 200 17ms","method":"GET","requestID":"c45be110-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/03246b98-61d4-40a0-9d38-c4abfab47540?"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"dcd5f05138aaa3ed8a7fa2a063a51341","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/846b1a35-5147-4095-b8e6-3399f1445736"},"level":"info","message":"Building connection plan","requestID":"50a9fb57d3bce63825327f3fa644ea50"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"df4326a6-3349-43fb-9f3f-84b78828da17"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"0ec50725-8eef-424d-8460-efaef3f01502"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"c38be893-995d-47ac-8d40-051884dee2df"}]},"level":"info","message":"Built pairwise service configurations","requestID":"50a9fb57d3bce63825327f3fa644ea50"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"50a9fb57d3bce63825327f3fa644ea50"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03246b98-61d4-40a0-9d38-c4abfab47540","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03246b98-61d4-40a0-9d38-c4abfab47540","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:14.219149400Z"}]},"request_id":"f27803a2-ffe4-417d-97c5-045a2ec5c395","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931055.0292077} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"c45eee50-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dcd5f05138aaa3ed8a7fa2a063a51341","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":120,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:15Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dcd5f05138aaa3ed8a7fa2a063a51341"} device-1 | {"level":"info","message":"GET /devices/03246b98-61d4-40a0-9d38-c4abfab47540? 200 14ms","method":"GET","requestID":"dcd5f05138aaa3ed8a7fa2a063a51341","responseTime":14,"status":200,"url":"/devices/03246b98-61d4-40a0-9d38-c4abfab47540?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":120,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.905169,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:15Z"} gateway-1 | {"time_local":"21/Sep/2024:15:04:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/03246b98-61d4-40a0-9d38-c4abfab47540? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dcd5f05138aaa3ed8a7fa2a063a51341"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c45eee50-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931054,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1NH0.c_RtjaGTNggkdGhSNC8qme-HM7aIUCjXX3AUOLkQcwg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c45eee50-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"4d3a56ee-76cb-4974-bb69-293e7d09ac50","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931055.0431423} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a5b88948-6c48-490c-b753-ad63fa09d151","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931055.043348} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c45eee50-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"c45eee50-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"c45eee50-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/2d65383f-d0bf-48b0-a4f3-dfc73636256e'","requestID":"c45eee50-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/2d65383f-d0bf-48b0-a4f3-dfc73636256e'","requestID":"c45eee50-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"c45eee50-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 26ms","method":"POST","requestID":"c45eee50-782a-11ef-88d4-5fea3f61bb98","responseTime":26,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"c45eee50-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/846b1a35-5147-4095-b8e6-3399f1445736"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"50a9fb57d3bce63825327f3fa644ea50"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c467c7f0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":121,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:15Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1a49b8e-7f14-483b-87c8-aab0d53d5250","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4dca4277-0a87-42a9-8a48-aeadcdc078dd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931055.0923264} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":121,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.027366,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c467c7f0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c467c7f0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c467c7f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250/signaling 200 9ms","method":"POST","requestID":"c467c7f0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c46975a0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":122,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:15Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03246b98-61d4-40a0-9d38-c4abfab47540","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"64207587-9f04-4867-92f8-f33ba3863646","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931055.1040983} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":122,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.405733,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c46975a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c46975a0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c46975a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/03246b98-61d4-40a0-9d38-c4abfab47540/signaling 200 11ms","method":"POST","requestID":"c46975a0-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/03246b98-61d4-40a0-9d38-c4abfab47540/signaling"} device-1 | {"device":"f1a49b8e-7f14-483b-87c8-aab0d53d5250","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"2d65383f-d0bf-48b0-a4f3-dfc73636256e","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"03246b98-61d4-40a0-9d38-c4abfab47540","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"2d65383f-d0bf-48b0-a4f3-dfc73636256e","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"03246b98-61d4-40a0-9d38-c4abfab47540","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"03246b98-61d4-40a0-9d38-c4abfab47540","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"03246b98-61d4-40a0-9d38-c4abfab47540","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"03246b98-61d4-40a0-9d38-c4abfab47540","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2d65383f-d0bf-48b0-a4f3-dfc73636256e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2d65383f-d0bf-48b0-a4f3-dfc73636256e","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"379b04773d447d884099f5286b0e7268","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"379b04773d447d884099f5286b0e7268","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/2d65383f-d0bf-48b0-a4f3-dfc73636256e"}}},"level":"info","message":"received a callback","requestID":"379b04773d447d884099f5286b0e7268"} device-1 | {"device":"f1a49b8e-7f14-483b-87c8-aab0d53d5250","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f1a49b8e-7f14-483b-87c8-aab0d53d5250","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f1a49b8e-7f14-483b-87c8-aab0d53d5250","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 12ms","method":"POST","requestID":"379b04773d447d884099f5286b0e7268","responseTime":12,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch","requestID":"379b04773d447d884099f5286b0e7268"} device-1 | {"data":{"peerconnection":"2d65383f-d0bf-48b0-a4f3-dfc73636256e","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"03246b98-61d4-40a0-9d38-c4abfab47540","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f1a49b8e-7f14-483b-87c8-aab0d53d5250","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"03246b98-61d4-40a0-9d38-c4abfab47540","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f1a49b8e-7f14-483b-87c8-aab0d53d5250","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"2d65383f-d0bf-48b0-a4f3-dfc73636256e","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2d65383f-d0bf-48b0-a4f3-dfc73636256e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2d65383f-d0bf-48b0-a4f3-dfc73636256e","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c116c6dd500053a45cdacd3e3d50e07f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c116c6dd500053a45cdacd3e3d50e07f","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/2d65383f-d0bf-48b0-a4f3-dfc73636256e"}}},"level":"info","message":"received a callback","requestID":"c116c6dd500053a45cdacd3e3d50e07f"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"c5a68980-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":123,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:17Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2d65383f-d0bf-48b0-a4f3-dfc73636256e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"53813586-deac-411a-baa2-5ef64cff670f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931057.185266} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":123,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.975927,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2d65383f-d0bf-48b0-a4f3-dfc73636256e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c5a68980-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/2d65383f-d0bf-48b0-a4f3-dfc73636256e","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"c5a68980-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"c5a68980-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/2d65383f-d0bf-48b0-a4f3-dfc73636256e 200 17ms","method":"GET","requestID":"c5a68980-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/peerconnections/2d65383f-d0bf-48b0-a4f3-dfc73636256e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 53ms","method":"POST","requestID":"c116c6dd500053a45cdacd3e3d50e07f","responseTime":53,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.059","http_referrer":"","http_user_agent":"node-fetch","requestID":"c116c6dd500053a45cdacd3e3d50e07f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c5ad8e60-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":124,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:17Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03246b98-61d4-40a0-9d38-c4abfab47540","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f9f76fa3-17fc-41ac-ab09-13682e8f02ee","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931057.2307787} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":124,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.071087,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c5ad8e60-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"c5ad8e60-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c5ad8e60-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/03246b98-61d4-40a0-9d38-c4abfab47540/signaling 200 17ms","method":"POST","requestID":"c5ad8e60-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/03246b98-61d4-40a0-9d38-c4abfab47540/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c5b09ba0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":125,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:17Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1a49b8e-7f14-483b-87c8-aab0d53d5250","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b90bf830-4535-483b-a16b-35abf98fdf9c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931057.2505445} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":125,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.712461,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:17Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1N30.PBBuvksAmz9OINDqn8cu3U4MmIhCJWS4XTi-JSY52yk","level":"info","message":"auth send jwt","requestID":"8cea03c98f706aa0a5237a9b3fe52d2e"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"8cea03c98f706aa0a5237a9b3fe52d2e","responseTime":6,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c5b09ba0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/846b1a35-5147-4095-b8e6-3399f1445736","requestID":"8cea03c98f706aa0a5237a9b3fe52d2e"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"c5b09ba0-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c5b09ba0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":126,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:17Z"} device-1 | {"level":"info","message":"POST /devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250/signaling 200 17ms","method":"POST","requestID":"c5b09ba0-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":126,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.748062,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/846b1a35-5147-4095-b8e6-3399f1445736","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"8cea03c98f706aa0a5237a9b3fe52d2e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/846b1a35-5147-4095-b8e6-3399f1445736","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931057,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1N30.PBBuvksAmz9OINDqn8cu3U4MmIhCJWS4XTi-JSY52yk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8cea03c98f706aa0a5237a9b3fe52d2e","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/846b1a35-5147-4095-b8e6-3399f1445736","requestID":"8cea03c98f706aa0a5237a9b3fe52d2e"} gateway-1 | {"time_local":"21/Sep/2024:15:04:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/846b1a35-5147-4095-b8e6-3399f1445736 HTTP/1.1","status": "200","body_bytes_sent":"889","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8cea03c98f706aa0a5237a9b3fe52d2e"} experiment-1 | {"level":"info","message":"GET /experiments/846b1a35-5147-4095-b8e6-3399f1445736 200 17ms","method":"GET","requestID":"8cea03c98f706aa0a5237a9b3fe52d2e","responseTime":17,"status":200,"url":"/experiments/846b1a35-5147-4095-b8e6-3399f1445736"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1N30.PBBuvksAmz9OINDqn8cu3U4MmIhCJWS4XTi-JSY52yk","level":"info","message":"auth send jwt","requestID":"109d400656ab0b03296832520fe546c7"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"109d400656ab0b03296832520fe546c7","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/846b1a35-5147-4095-b8e6-3399f1445736","requestID":"109d400656ab0b03296832520fe546c7"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":127,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:17Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":127,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.009319,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:17Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/846b1a35-5147-4095-b8e6-3399f1445736","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"109d400656ab0b03296832520fe546c7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/846b1a35-5147-4095-b8e6-3399f1445736","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931057,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1N30.PBBuvksAmz9OINDqn8cu3U4MmIhCJWS4XTi-JSY52yk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"109d400656ab0b03296832520fe546c7","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/846b1a35-5147-4095-b8e6-3399f1445736"},"level":"info","message":"Attempting to finish experiment","requestID":"109d400656ab0b03296832520fe546c7"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"c5b88ae0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":128,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:17Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":128,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":2.022931,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:17Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2d65383f-d0bf-48b0-a4f3-dfc73636256e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c5b88ae0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/2d65383f-d0bf-48b0-a4f3-dfc73636256e","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931057,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1N30.PBBuvksAmz9OINDqn8cu3U4MmIhCJWS4XTi-JSY52yk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c5b88ae0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"03246b98-61d4-40a0-9d38-c4abfab47540","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"03246b98-61d4-40a0-9d38-c4abfab47540","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"03246b98-61d4-40a0-9d38-c4abfab47540","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f1a49b8e-7f14-483b-87c8-aab0d53d5250","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f1a49b8e-7f14-483b-87c8-aab0d53d5250","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f1a49b8e-7f14-483b-87c8-aab0d53d5250","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2d65383f-d0bf-48b0-a4f3-dfc73636256e' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/2d65383f-d0bf-48b0-a4f3-dfc73636256e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2d65383f-d0bf-48b0-a4f3-dfc73636256e","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2d65383f-d0bf-48b0-a4f3-dfc73636256e': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2d65383f-d0bf-48b0-a4f3-dfc73636256e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"42130a61-9b68-4882-8f78-9a98a6dd18ea","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931057.3221078} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ae17ed84-3d29-43a8-ada9-9badb50b42be","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931057.3225827} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"74623ea991f72625a1a8ddd4f5f21eb4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"c5b88ae0-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"74623ea991f72625a1a8ddd4f5f21eb4","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"36bfdc20652a07a6179e4e878178846b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"36bfdc20652a07a6179e4e878178846b","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2d65383f-d0bf-48b0-a4f3-dfc73636256e"}}},"level":"info","message":"received a callback","requestID":"74623ea991f72625a1a8ddd4f5f21eb4"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2d65383f-d0bf-48b0-a4f3-dfc73636256e"}}},"level":"info","message":"received a callback","requestID":"36bfdc20652a07a6179e4e878178846b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"c5b88ae0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/2d65383f-d0bf-48b0-a4f3-dfc73636256e 204 48ms","method":"DELETE","requestID":"c5b88ae0-782a-11ef-88d4-5fea3f61bb98","responseTime":48,"status":204,"url":"/peerconnections/2d65383f-d0bf-48b0-a4f3-dfc73636256e"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/846b1a35-5147-4095-b8e6-3399f1445736"},"level":"info","message":"Successfully finished experiment","requestID":"109d400656ab0b03296832520fe546c7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c5c2c410-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":129,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:17Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F03246b98-61d4-40a0-9d38-c4abfab47540","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"686c39af-7d71-4b43-929c-12e80776a1c9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931057.3670278} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":129,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.230715,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c5c2c410-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c5c2c410-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c5c2c410-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/03246b98-61d4-40a0-9d38-c4abfab47540/signaling 200 10ms","method":"POST","requestID":"c5c2c410-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/03246b98-61d4-40a0-9d38-c4abfab47540/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c5c498d0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":130,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:17Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1a49b8e-7f14-483b-87c8-aab0d53d5250","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"07b49efb-ea44-486a-84a8-a463aea293aa","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931057.378124} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":130,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.319826,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c5c498d0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c5c498d0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F846b1a35-5147-4095-b8e6-3399f1445736': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F846b1a35-5147-4095-b8e6-3399f1445736","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"c871ca6b-f6d1-4e06-82d6-ff5f08e9635e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931057.3798857} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"51733c1c-717d-4471-b7da-625be2901e78","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931057.3802502} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c5c498d0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"109d400656ab0b03296832520fe546c7","responseTime":25,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"POST /devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250/signaling 200 11ms","method":"POST","requestID":"c5c498d0-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/846b1a35-5147-4095-b8e6-3399f1445736","requestID":"109d400656ab0b03296832520fe546c7"} gateway-1 | {"time_local":"21/Sep/2024:15:04:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/846b1a35-5147-4095-b8e6-3399f1445736 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.166","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"109d400656ab0b03296832520fe546c7"} experiment-1 | {"level":"info","message":"DELETE /experiments/846b1a35-5147-4095-b8e6-3399f1445736 204 160ms","method":"DELETE","requestID":"109d400656ab0b03296832520fe546c7","responseTime":160,"status":204,"url":"/experiments/846b1a35-5147-4095-b8e6-3399f1445736"} gateway-1 | {"time_local":"21/Sep/2024:15:04:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2891","request_time":"2.683","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"d111b7cafdcbf337afb76a776f07a471"} gateway-1 | {"time_local":"21/Sep/2024:15:04:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2891","request_time":"2.694","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e59fb4353854eccb6446b79c73fb9d1e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 115ms","method":"POST","requestID":"74623ea991f72625a1a8ddd4f5f21eb4","responseTime":115,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.120","http_referrer":"","http_user_agent":"node-fetch","requestID":"74623ea991f72625a1a8ddd4f5f21eb4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1N30.PBBuvksAmz9OINDqn8cu3U4MmIhCJWS4XTi-JSY52yk","level":"info","message":"auth send jwt","requestID":"b4b524a266639b570bd6e629d5ec7b2b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b4b524a266639b570bd6e629d5ec7b2b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 117ms","method":"POST","requestID":"36bfdc20652a07a6179e4e878178846b","responseTime":117,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.122","http_referrer":"","http_user_agent":"node-fetch","requestID":"36bfdc20652a07a6179e4e878178846b"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/03246b98-61d4-40a0-9d38-c4abfab47540' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"b4b524a266639b570bd6e629d5ec7b2b"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":131,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:17Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":131,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.849925,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b4b524a266639b570bd6e629d5ec7b2b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931057,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1N30.PBBuvksAmz9OINDqn8cu3U4MmIhCJWS4XTi-JSY52yk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b4b524a266639b570bd6e629d5ec7b2b","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/f1a49b8e-7f14-483b-87c8-aab0d53d5250' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddfad674-adb1-49f1-aee3-42cb5f2e6a27","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"23522c10-d41c-4c75-a7d4-271ba0e386d0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931057.4694088} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b4b524a266639b570bd6e629d5ec7b2b","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"67e14f98-1ce9-4e6e-b9cc-3dfd9a0c125c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931057.4757457} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"b4b524a266639b570bd6e629d5ec7b2b","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddfad674-adb1-49f1-aee3-42cb5f2e6a27","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"04e88ccc-9cc1-43c9-90df-ad88d568325e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931057.4861026} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"676ed95f-9e09-4458-afb3-ef3b648f0cec","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931057.486396} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"b4b524a266639b570bd6e629d5ec7b2b","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddfad674-adb1-49f1-aee3-42cb5f2e6a27","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddfad674-adb1-49f1-aee3-42cb5f2e6a27","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:17.486087741Z"}]},"request_id":"5ef6d5be-7492-4892-ad62-a34353132469","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931057.4924147} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b4b524a266639b570bd6e629d5ec7b2b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b4b524a266639b570bd6e629d5ec7b2b"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"b4b524a266639b570bd6e629d5ec7b2b","responseTime":47,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b4b524a266639b570bd6e629d5ec7b2b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1N30.PBBuvksAmz9OINDqn8cu3U4MmIhCJWS4XTi-JSY52yk","level":"info","message":"auth send jwt","requestID":"6d3738d6f8c604d3c493fff9cea9ab9b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6d3738d6f8c604d3c493fff9cea9ab9b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6d3738d6f8c604d3c493fff9cea9ab9b"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":132,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:17Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":132,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.855163,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"6d3738d6f8c604d3c493fff9cea9ab9b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931057,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1N30.PBBuvksAmz9OINDqn8cu3U4MmIhCJWS4XTi-JSY52yk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6d3738d6f8c604d3c493fff9cea9ab9b","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd30665c-e2ea-4b5d-9a92-41fff978a36f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"8d2a8234-af8b-45c3-9692-62a9f7521af0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931057.526245} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6d3738d6f8c604d3c493fff9cea9ab9b","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c349f295-3a79-47da-9a4c-eacdea4a2942","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931057.5323749} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"6d3738d6f8c604d3c493fff9cea9ab9b","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd30665c-e2ea-4b5d-9a92-41fff978a36f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"616b2b65-10fa-4678-ba22-fe039d445134","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931057.5442598} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"38d613ad-e86a-47bb-bc81-2f5a95cc9724","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931057.5444195} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"6d3738d6f8c604d3c493fff9cea9ab9b","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd30665c-e2ea-4b5d-9a92-41fff978a36f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd30665c-e2ea-4b5d-9a92-41fff978a36f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:17.544246314Z"}]},"request_id":"dd67f9f3-2464-4f05-88de-ff071a6f3a4f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931057.5496328} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6d3738d6f8c604d3c493fff9cea9ab9b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6d3738d6f8c604d3c493fff9cea9ab9b"} gateway-1 | {"time_local":"21/Sep/2024:15:04:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6d3738d6f8c604d3c493fff9cea9ab9b"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"6d3738d6f8c604d3c493fff9cea9ab9b","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fc53bda41e92439eff1e36f82891279a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"fc53bda41e92439eff1e36f82891279a","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6d93a551961b644dfe981c570789348a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} gateway-1 | {"time_local":"21/Sep/2024:15:04:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"fc53bda41e92439eff1e36f82891279a"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6d93a551961b644dfe981c570789348a","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f/websocket 200 2ms","method":"OPTIONS","requestID":"fc53bda41e92439eff1e36f82891279a","responseTime":2,"status":200,"url":"/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:04:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6d93a551961b644dfe981c570789348a"} device-1 | {"level":"info","message":"OPTIONS /devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27/websocket 200 1ms","method":"OPTIONS","requestID":"6d93a551961b644dfe981c570789348a","responseTime":1,"status":200,"url":"/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1OX0.PZ-LtNOPR44MFnp8KWotJxlEVww1evTuQL8xUIu1JGI","level":"info","message":"auth send jwt","requestID":"060b243d10ffd9a3ac07a9b31432a174"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"060b243d10ffd9a3ac07a9b31432a174","responseTime":7,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1OX0.PZ-LtNOPR44MFnp8KWotJxlEVww1evTuQL8xUIu1JGI","level":"info","message":"auth send jwt","requestID":"43fce7a90d130165f7b30afb64ad43f4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"060b243d10ffd9a3ac07a9b31432a174"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"43fce7a90d130165f7b30afb64ad43f4","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"43fce7a90d130165f7b30afb64ad43f4"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":133,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:19Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":133,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.138211,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:19Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"060b243d10ffd9a3ac07a9b31432a174","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931059,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1OX0.PZ-LtNOPR44MFnp8KWotJxlEVww1evTuQL8xUIu1JGI"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"060b243d10ffd9a3ac07a9b31432a174","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":134,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:19Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":134,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.749097,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:19Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"43fce7a90d130165f7b30afb64ad43f4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931059,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA1OX0.PZ-LtNOPR44MFnp8KWotJxlEVww1evTuQL8xUIu1JGI"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"43fce7a90d130165f7b30afb64ad43f4","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"060b243d10ffd9a3ac07a9b31432a174"} gateway-1 | {"time_local":"21/Sep/2024:15:04:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.276","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"060b243d10ffd9a3ac07a9b31432a174"} device-1 | {"level":"info","message":"POST /devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f/websocket 200 266ms","method":"POST","requestID":"060b243d10ffd9a3ac07a9b31432a174","responseTime":266,"status":200,"url":"/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"43fce7a90d130165f7b30afb64ad43f4"} gateway-1 | {"time_local":"21/Sep/2024:15:04:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.457","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"43fce7a90d130165f7b30afb64ad43f4"} device-1 | {"level":"info","message":"POST /devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27/websocket 200 446ms","method":"POST","requestID":"43fce7a90d130165f7b30afb64ad43f4","responseTime":446,"status":200,"url":"/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7b783227c20746007ea2af360373d8f1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7b783227c20746007ea2af360373d8f1","responseTime":3,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.006","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"7b783227c20746007ea2af360373d8f1"} device-1 | {"level":"info","message":"OPTIONS /devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f? 200 2ms","method":"OPTIONS","requestID":"7b783227c20746007ea2af360373d8f1","responseTime":2,"status":200,"url":"/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg","level":"info","message":"auth send jwt","requestID":"ee815432d86ea1d6374ee51355691c93"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"ee815432d86ea1d6374ee51355691c93","responseTime":8,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ee815432d86ea1d6374ee51355691c93"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4cf42336a548b47c5c0d50a197d883f1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4cf42336a548b47c5c0d50a197d883f1","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.006","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4cf42336a548b47c5c0d50a197d883f1"} device-1 | {"level":"info","message":"OPTIONS /devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27? 200 2ms","method":"OPTIONS","requestID":"4cf42336a548b47c5c0d50a197d883f1","responseTime":2,"status":200,"url":"/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":135,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":135,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.250916,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ee815432d86ea1d6374ee51355691c93","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931060,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ee815432d86ea1d6374ee51355691c93","responseTime":7,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg","level":"info","message":"auth send jwt","requestID":"0e904f3579cd3a0dc815dbf38d97d607"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0e904f3579cd3a0dc815dbf38d97d607","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"0e904f3579cd3a0dc815dbf38d97d607"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd30665c-e2ea-4b5d-9a92-41fff978a36f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd30665c-e2ea-4b5d-9a92-41fff978a36f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:17.544246314Z"}]},"request_id":"3d4f07ca-2a37-4c75-8c8e-fa718f5b5fc1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.164284} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"ee815432d86ea1d6374ee51355691c93","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":136,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":136,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.229068,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0e904f3579cd3a0dc815dbf38d97d607","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931060,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"0e904f3579cd3a0dc815dbf38d97d607","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"89333fba-8106-4e25-9d9d-a06dc5c62ee3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.1773057} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"ee815432d86ea1d6374ee51355691c93","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddfad674-adb1-49f1-aee3-42cb5f2e6a27","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddfad674-adb1-49f1-aee3-42cb5f2e6a27","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:17.486087741Z"}]},"request_id":"6da138c4-d20a-48ef-9e3b-d1b9d16565c1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.1944616} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"0e904f3579cd3a0dc815dbf38d97d607","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd30665c-e2ea-4b5d-9a92-41fff978a36f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd30665c-e2ea-4b5d-9a92-41fff978a36f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:17.544246314Z"}]},"request_id":"5df5fa85-6984-4d89-8c92-297dd07793f5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.1963067} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ee815432d86ea1d6374ee51355691c93","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ee815432d86ea1d6374ee51355691c93"} gateway-1 | {"time_local":"21/Sep/2024:15:04:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.071","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ee815432d86ea1d6374ee51355691c93"} device-1 | {"level":"info","message":"PATCH /devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f? 200 59ms","method":"PATCH","requestID":"ee815432d86ea1d6374ee51355691c93","responseTime":59,"status":200,"url":"/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0f3a6f44-fd45-4985-8ac4-3cd91d490b4c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.2037303} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"0e904f3579cd3a0dc815dbf38d97d607","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddfad674-adb1-49f1-aee3-42cb5f2e6a27","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddfad674-adb1-49f1-aee3-42cb5f2e6a27","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:17.486087741Z"}]},"request_id":"6aeaf231-56a7-44a9-9cb9-76af7fe175d3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.2203758} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0e904f3579cd3a0dc815dbf38d97d607","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"0e904f3579cd3a0dc815dbf38d97d607"} gateway-1 | {"time_local":"21/Sep/2024:15:04:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.072","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0e904f3579cd3a0dc815dbf38d97d607"} device-1 | {"level":"info","message":"PATCH /devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27? 200 63ms","method":"PATCH","requestID":"0e904f3579cd3a0dc815dbf38d97d607","responseTime":63,"status":200,"url":"/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg","level":"info","message":"auth send jwt","requestID":"2b70c25f2b6e92af1d8760aaa23c1398"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2b70c25f2b6e92af1d8760aaa23c1398","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2b70c25f2b6e92af1d8760aaa23c1398"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":137,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":137,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.221252,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"2b70c25f2b6e92af1d8760aaa23c1398","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931060,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2b70c25f2b6e92af1d8760aaa23c1398","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddfad674-adb1-49f1-aee3-42cb5f2e6a27","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddfad674-adb1-49f1-aee3-42cb5f2e6a27","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:17.486087741Z"}]},"request_id":"2effca19-1342-4feb-a161-3402059071cd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.2536137} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"2b70c25f2b6e92af1d8760aaa23c1398","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2b70c25f2b6e92af1d8760aaa23c1398"} gateway-1 | {"time_local":"21/Sep/2024:15:04:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2b70c25f2b6e92af1d8760aaa23c1398"} device-1 | {"level":"info","message":"GET /devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27? 200 20ms","method":"GET","requestID":"2b70c25f2b6e92af1d8760aaa23c1398","responseTime":20,"status":200,"url":"/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg","level":"info","message":"auth send jwt","requestID":"b964063b69d6c6ce7c65a5cd49631aad"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"b964063b69d6c6ce7c65a5cd49631aad","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b964063b69d6c6ce7c65a5cd49631aad"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":138,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":138,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.178231,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b964063b69d6c6ce7c65a5cd49631aad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931060,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b964063b69d6c6ce7c65a5cd49631aad","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd30665c-e2ea-4b5d-9a92-41fff978a36f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd30665c-e2ea-4b5d-9a92-41fff978a36f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:17.544246314Z"}]},"request_id":"cb776fd9-668c-4210-881d-ece7d977a2ce","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.2838767} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b964063b69d6c6ce7c65a5cd49631aad","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b964063b69d6c6ce7c65a5cd49631aad"} gateway-1 | {"time_local":"21/Sep/2024:15:04:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b964063b69d6c6ce7c65a5cd49631aad"} device-1 | {"level":"info","message":"GET /devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f? 200 20ms","method":"GET","requestID":"b964063b69d6c6ce7c65a5cd49631aad","responseTime":20,"status":200,"url":"/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg","level":"info","message":"auth send jwt","requestID":"4e6ca7d480bdaf3f6a4094bc9f76476d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4e6ca7d480bdaf3f6a4094bc9f76476d","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"4e6ca7d480bdaf3f6a4094bc9f76476d"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":139,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":139,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.135904,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"4e6ca7d480bdaf3f6a4094bc9f76476d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931060,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4e6ca7d480bdaf3f6a4094bc9f76476d","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e"},"level":"info","message":"Attempting to run experiment","requestID":"4e6ca7d480bdaf3f6a4094bc9f76476d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e"},"level":"info","message":"Attempting to book experiment","requestID":"4e6ca7d480bdaf3f6a4094bc9f76476d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e"},"level":"info","message":"Successfully booked experiment","requestID":"4e6ca7d480bdaf3f6a4094bc9f76476d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c78a8bc0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c78ad9e0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":140,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":140,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.731813,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c78a8bc0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931060,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c78a8bc0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":141,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":141,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.522327,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c78ad9e0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931060,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c78ad9e0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddfad674-adb1-49f1-aee3-42cb5f2e6a27","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddfad674-adb1-49f1-aee3-42cb5f2e6a27","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:17.486087741Z"}]},"request_id":"e4d996fe-9617-401e-9191-b5f967a3014d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.3585787} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c78a8bc0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd30665c-e2ea-4b5d-9a92-41fff978a36f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd30665c-e2ea-4b5d-9a92-41fff978a36f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:17.544246314Z"}]},"request_id":"abefcf37-a8e1-44b1-8bfc-bb41dcd81907","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.3598046} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c78ad9e0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c78a8bc0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27? 200 19ms","method":"GET","requestID":"c78a8bc0-782a-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c78ad9e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f? 200 19ms","method":"GET","requestID":"c78ad9e0-782a-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e"},"level":"info","message":"Setting up experiment","requestID":"4e6ca7d480bdaf3f6a4094bc9f76476d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"4e6ca7d480bdaf3f6a4094bc9f76476d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e"},"level":"info","message":"Successfully locked booking for experiment","requestID":"4e6ca7d480bdaf3f6a4094bc9f76476d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"4e6ca7d480bdaf3f6a4094bc9f76476d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"4e6ca7d480bdaf3f6a4094bc9f76476d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e"},"level":"info","message":"Attempting to update booking for experiment","requestID":"4e6ca7d480bdaf3f6a4094bc9f76476d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e"},"level":"info","message":"Successfully updated booking for experiment","requestID":"4e6ca7d480bdaf3f6a4094bc9f76476d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e"},"level":"info","message":"Successfully set up experiment","requestID":"4e6ca7d480bdaf3f6a4094bc9f76476d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c7978410-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c797d230-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c7982050-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e"},"level":"info","message":"Successfully running experiment","requestID":"4e6ca7d480bdaf3f6a4094bc9f76476d"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":142,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":142,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.958736,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":143,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c7978410-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931060,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c7978410-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":143,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.276201,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c797d230-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931060,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"c797d230-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddfad674-adb1-49f1-aee3-42cb5f2e6a27","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddfad674-adb1-49f1-aee3-42cb5f2e6a27","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:17.486087741Z"}]},"request_id":"5d460d44-5976-40de-a240-39d08f07bc69","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.4552996} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddfad674-adb1-49f1-aee3-42cb5f2e6a27","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c624ccc2-f0af-4759-b51e-3e5e716175be","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.4587612} authorization-1 | {"client_addr":"127.0.0.1:45552","level":"info","msg":"Received request.","req_id":144,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 10ms","method":"POST","requestID":"c7978410-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd30665c-e2ea-4b5d-9a92-41fff978a36f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd30665c-e2ea-4b5d-9a92-41fff978a36f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:17.544246314Z"}]},"request_id":"f2ef2c0e-fe6c-45d4-90f5-a0516703c4a9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.4590242} authorization-1 | {"client_addr":"127.0.0.1:45552","level":"info","msg":"Sent response.","req_id":144,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.415594,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"c797d230-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c7982050-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 22ms","method":"POST","requestID":"c7982050-782a-11ef-88d4-5fea3f61bb98","responseTime":22,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5cec45bc-ab1f-42fa-b247-dbdece4fcd7e#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5cec45bc-ab1f-42fa-b247-dbdece4fcd7e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"652174f3-2496-4729-84ca-7643b85a1360","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.4699872} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c7978410-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2badd627-9feb-433c-953b-ca33a14f2ef5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.4703498} device-1 | {"level":"info","message":"GET /devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27? 200 38ms","method":"GET","requestID":"c7978410-782a-11ef-88d4-5fea3f61bb98","responseTime":38,"status":200,"url":"/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c797d230-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f? 200 40ms","method":"GET","requestID":"c797d230-782a-11ef-88d4-5fea3f61bb98","responseTime":40,"status":200,"url":"/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 29ms","method":"POST","requestID":"4e6ca7d480bdaf3f6a4094bc9f76476d","responseTime":29,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c7982050-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27/signaling 200 39ms","method":"POST","requestID":"c7982050-782a-11ef-88d4-5fea3f61bb98","responseTime":39,"status":200,"url":"/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c79e61e0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":145,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c79f2530-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddfad674-adb1-49f1-aee3-42cb5f2e6a27","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8bb7898c-912a-4d14-a279-1a5969356c23","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.4852154} experiment-1 | {"data":{"experiment":"http://localhost/experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"4e6ca7d480bdaf3f6a4094bc9f76476d"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":145,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.502614,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":146,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c79e61e0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} gateway-1 | {"time_local":"21/Sep/2024:15:04:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"808","request_time":"0.195","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4e6ca7d480bdaf3f6a4094bc9f76476d"} experiment-1 | {"level":"info","message":"POST /experiments? 201 189ms","method":"POST","requestID":"4e6ca7d480bdaf3f6a4094bc9f76476d","responseTime":189,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"c79e61e0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd30665c-e2ea-4b5d-9a92-41fff978a36f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0e4abcfe-c5a0-493e-baa2-0d092430ca21","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.4899936} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":146,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.356848,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c79f2530-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c79e61e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27/signaling 200 15ms","method":"POST","requestID":"c79e61e0-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c79f2530-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg","level":"info","message":"auth send jwt","requestID":"b37950b5dfb639df5b85378138043bf0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b37950b5dfb639df5b85378138043bf0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c7a12100-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b37950b5dfb639df5b85378138043bf0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c79f2530-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f/signaling 200 17ms","method":"POST","requestID":"c79f2530-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":147,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":148,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":148,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.24152,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b37950b5dfb639df5b85378138043bf0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931060,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b37950b5dfb639df5b85378138043bf0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd30665c-e2ea-4b5d-9a92-41fff978a36f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2c138d17-9b71-4a16-a19e-a6c09bc4f13e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.5018466} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":147,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.237609,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c7a12100-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c7a12100-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddfad674-adb1-49f1-aee3-42cb5f2e6a27","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddfad674-adb1-49f1-aee3-42cb5f2e6a27","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:17.486087741Z"}]},"request_id":"795afdf2-6ecf-4c7e-bad9-9319347ede3b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.5072618} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b37950b5dfb639df5b85378138043bf0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c7a12100-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f/signaling 200 15ms","method":"POST","requestID":"c7a12100-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b37950b5dfb639df5b85378138043bf0"} gateway-1 | {"time_local":"21/Sep/2024:15:04:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b37950b5dfb639df5b85378138043bf0"} device-1 | {"level":"info","message":"GET /devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27? 200 14ms","method":"GET","requestID":"b37950b5dfb639df5b85378138043bf0","responseTime":14,"status":200,"url":"/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"4e6ca7d480bdaf3f6a4094bc9f76476d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c7a3e020-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c7a42e40-782a-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg","level":"info","message":"auth send jwt","requestID":"a044ab341741686a701cf1394fd8fa91"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a044ab341741686a701cf1394fd8fa91","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":149,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":149,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.683075,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":150,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a044ab341741686a701cf1394fd8fa91"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c7a3e020-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931060,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c7a3e020-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":150,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.816957,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c7a42e40-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931060,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c7a42e40-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":151,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":151,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.21747,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a044ab341741686a701cf1394fd8fa91","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931060,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a044ab341741686a701cf1394fd8fa91","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddfad674-adb1-49f1-aee3-42cb5f2e6a27","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddfad674-adb1-49f1-aee3-42cb5f2e6a27","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:17.486087741Z"}]},"request_id":"7b20b161-03e7-485f-a5e6-0fa32fcf259a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.5247142} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd30665c-e2ea-4b5d-9a92-41fff978a36f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd30665c-e2ea-4b5d-9a92-41fff978a36f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:17.544246314Z"}]},"request_id":"c4eac147-166f-45a3-9039-11bfad7085bc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.525605} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c7a3e020-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c7a42e40-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd30665c-e2ea-4b5d-9a92-41fff978a36f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd30665c-e2ea-4b5d-9a92-41fff978a36f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:17.544246314Z"}]},"request_id":"961a9d96-124a-4273-a494-9f8dc2eef63c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.5295799} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a044ab341741686a701cf1394fd8fa91","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c7a3e020-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27? 200 19ms","method":"GET","requestID":"c7a3e020-782a-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c7a42e40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f? 200 17ms","method":"GET","requestID":"c7a42e40-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e"},"level":"info","message":"Building connection plan","requestID":"4e6ca7d480bdaf3f6a4094bc9f76476d"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a044ab341741686a701cf1394fd8fa91"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"1b34835d-4a95-4ba7-9bd0-0ebe9cb7e2a9"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"aa4f1e8f-30d1-41fc-a469-5c1fc30a2a64"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"9fa82c8f-beb8-4b57-9980-de7d9fe50e45"}]},"level":"info","message":"Built pairwise service configurations","requestID":"4e6ca7d480bdaf3f6a4094bc9f76476d"} device-1 | {"level":"info","message":"GET /devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f? 200 16ms","method":"GET","requestID":"a044ab341741686a701cf1394fd8fa91","responseTime":16,"status":200,"url":"/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a044ab341741686a701cf1394fd8fa91"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"c7a91040-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"c7a91040-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"POST /rooms 201 9ms","method":"POST","requestID":"c7a91040-782a-11ef-938d-0b888d58857d","responseTime":9,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/8be71396-9292-45c8-8271-38dddf380e6b?id=ace5b77b-e038-4e59-b5e2-3bf035c5d59e","ws://localhost/rooms/8be71396-9292-45c8-8271-38dddf380e6b?id=f01f1674-a402-467b-8fc1-cba71b95f3cd"]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"4e6ca7d480bdaf3f6a4094bc9f76476d"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"c7aae500-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":152,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":152,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.981174,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c7aae500-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931060,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c7aae500-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"216d76a8-293e-4e7f-b6e7-17aacec516a7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.572222} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"567a8991-78ec-4ca7-9263-92ccae02215b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.5723813} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c7aae500-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"c7aae500-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"c7aae500-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/89d15f3d-fbc4-4e53-bf23-a70686671a70'","requestID":"c7aae500-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/89d15f3d-fbc4-4e53-bf23-a70686671a70'","requestID":"c7aae500-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"c7aae500-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 27ms","method":"POST","requestID":"c7aae500-782a-11ef-88d4-5fea3f61bb98","responseTime":27,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"c7aae500-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/89d15f3d-fbc4-4e53-bf23-a70686671a70' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"89d15f3d-fbc4-4e53-bf23-a70686671a70","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5d7aab7b46651da2b9e332723c979201","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5d7aab7b46651da2b9e332723c979201","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/89d15f3d-fbc4-4e53-bf23-a70686671a70"}}},"level":"info","message":"received a callback","requestID":"5d7aab7b46651da2b9e332723c979201"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"c7b19bc0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f01f1674-a402-467b-8fc1-cba71b95f3cd\" in room \"http://localhost/rooms/8be71396-9292-45c8-8271-38dddf380e6b\"","requestID":"c7b19bc0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"c7b19bc0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"c7b1e9e0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ace5b77b-e038-4e59-b5e2-3bf035c5d59e\" in room \"http://localhost/rooms/8be71396-9292-45c8-8271-38dddf380e6b\"","requestID":"c7b1e9e0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"c7b1e9e0-782a-11ef-938d-0b888d58857d"} device-1 | {"data":{"peerconnection":"89d15f3d-fbc4-4e53-bf23-a70686671a70","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"5d7aab7b46651da2b9e332723c979201","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"5d7aab7b46651da2b9e332723c979201"} device-1 | {"data":{"peerconnection":"89d15f3d-fbc4-4e53-bf23-a70686671a70","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"4e6ca7d480bdaf3f6a4094bc9f76476d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c7b56c50-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":153,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddfad674-adb1-49f1-aee3-42cb5f2e6a27","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8458416d-1812-4cb2-a9a7-ce1a86354993","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.634665} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":153,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.403665,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c7b56c50-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c7b56c50-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/89d15f3d-fbc4-4e53-bf23-a70686671a70' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"89d15f3d-fbc4-4e53-bf23-a70686671a70","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c7b56c50-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27/signaling 200 11ms","method":"POST","requestID":"c7b56c50-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5e695680c590f5028b0a8f57b99b6143","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5e695680c590f5028b0a8f57b99b6143","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c7b78f30-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/89d15f3d-fbc4-4e53-bf23-a70686671a70"}}},"level":"info","message":"received a callback","requestID":"5e695680c590f5028b0a8f57b99b6143"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":154,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd30665c-e2ea-4b5d-9a92-41fff978a36f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a4dec0ab-06cc-4bf0-9bf7-12fe182ec1a0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.6479187} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":154,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.455838,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c7b78f30-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"c7b87990-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c7b78f30-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":155,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c7b78f30-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f/signaling 200 11ms","method":"POST","requestID":"c7b78f30-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F89d15f3d-fbc4-4e53-bf23-a70686671a70","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d26077ff-885a-4f7d-95e3-490d2b4c84a0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.6548038} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":155,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.203003,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/89d15f3d-fbc4-4e53-bf23-a70686671a70","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c7b87990-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/89d15f3d-fbc4-4e53-bf23-a70686671a70","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c7b87990-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"c7b87990-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/89d15f3d-fbc4-4e53-bf23-a70686671a70 200 11ms","method":"GET","requestID":"c7b87990-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/peerconnections/89d15f3d-fbc4-4e53-bf23-a70686671a70"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 37ms","method":"POST","requestID":"5e695680c590f5028b0a8f57b99b6143","responseTime":37,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c7bd5b90-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":156,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} gateway-1 | {"time_local":"21/Sep/2024:15:04:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch","requestID":"5e695680c590f5028b0a8f57b99b6143"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd30665c-e2ea-4b5d-9a92-41fff978a36f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"278d3c3e-2949-4b89-938c-a3289279b306","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.6863215} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":156,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.232325,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c7bd5b90-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c7bd5b90-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c7bd5b90-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f/signaling 200 10ms","method":"POST","requestID":"c7bd5b90-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c7bf5760-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":157,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddfad674-adb1-49f1-aee3-42cb5f2e6a27","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a5e98032-da0a-4400-9f46-242099bc6b4b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.6996794} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":157,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.316247,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c7bf5760-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c7bf5760-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c7bf5760-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27/signaling 200 13ms","method":"POST","requestID":"c7bf5760-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg","level":"info","message":"auth send jwt","requestID":"5939973bcd3af68d1a5f508fb0de2ea2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5939973bcd3af68d1a5f508fb0de2ea2","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e","requestID":"5939973bcd3af68d1a5f508fb0de2ea2"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":158,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":158,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.805408,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"5939973bcd3af68d1a5f508fb0de2ea2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931060,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5939973bcd3af68d1a5f508fb0de2ea2","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e","requestID":"5939973bcd3af68d1a5f508fb0de2ea2"} gateway-1 | {"time_local":"21/Sep/2024:15:04:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e HTTP/1.1","status": "200","body_bytes_sent":"881","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5939973bcd3af68d1a5f508fb0de2ea2"} experiment-1 | {"level":"info","message":"GET /experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e 200 13ms","method":"GET","requestID":"5939973bcd3af68d1a5f508fb0de2ea2","responseTime":13,"status":200,"url":"/experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg","level":"info","message":"auth send jwt","requestID":"dacd3c9d9891e9383a247da823e5eca4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"dacd3c9d9891e9383a247da823e5eca4","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e","requestID":"dacd3c9d9891e9383a247da823e5eca4"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":159,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":159,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.666184,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dacd3c9d9891e9383a247da823e5eca4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931060,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"dacd3c9d9891e9383a247da823e5eca4","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e"},"level":"info","message":"Attempting to finish experiment","requestID":"dacd3c9d9891e9383a247da823e5eca4"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"c7c6f880-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":160,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":160,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.451452,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/89d15f3d-fbc4-4e53-bf23-a70686671a70","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c7c6f880-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/89d15f3d-fbc4-4e53-bf23-a70686671a70","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931060,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c7c6f880-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/89d15f3d-fbc4-4e53-bf23-a70686671a70","device":"ddfad674-adb1-49f1-aee3-42cb5f2e6a27","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/89d15f3d-fbc4-4e53-bf23-a70686671a70","device":"bd30665c-e2ea-4b5d-9a92-41fff978a36f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/89d15f3d-fbc4-4e53-bf23-a70686671a70' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/89d15f3d-fbc4-4e53-bf23-a70686671a70' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"89d15f3d-fbc4-4e53-bf23-a70686671a70","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"21/Sep/2024:15:04:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/8be71396-9292-45c8-8271-38dddf380e6b?id=f01f1674-a402-467b-8fc1-cba71b95f3cd HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.162","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"475012bc3fff2b1b70c971beb2a68d08"} gateway-1 | {"time_local":"21/Sep/2024:15:04:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/8be71396-9292-45c8-8271-38dddf380e6b?id=ace5b77b-e038-4e59-b5e2-3bf035c5d59e HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.164","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3c3b3ec4e8e39a0f5b10d18c54391c2c"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"f01f1674-a402-467b-8fc1-cba71b95f3cd\" in room \"http://localhost/rooms/8be71396-9292-45c8-8271-38dddf380e6b\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"f01f1674-a402-467b-8fc1-cba71b95f3cd\" from room \"http://localhost/rooms/8be71396-9292-45c8-8271-38dddf380e6b\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"48ad5e4e96d38a5b36e395cfb0f66fdb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"48ad5e4e96d38a5b36e395cfb0f66fdb","responseTime":2,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"ace5b77b-e038-4e59-b5e2-3bf035c5d59e\" in room \"http://localhost/rooms/8be71396-9292-45c8-8271-38dddf380e6b\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"ace5b77b-e038-4e59-b5e2-3bf035c5d59e\" from room \"http://localhost/rooms/8be71396-9292-45c8-8271-38dddf380e6b\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c34cc3b47ec27611aa845f5f6c82260c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c34cc3b47ec27611aa845f5f6c82260c","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/89d15f3d-fbc4-4e53-bf23-a70686671a70"}}},"level":"info","message":"received a callback","requestID":"48ad5e4e96d38a5b36e395cfb0f66fdb"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F89d15f3d-fbc4-4e53-bf23-a70686671a70': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F89d15f3d-fbc4-4e53-bf23-a70686671a70","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"1c714749-4f66-4fef-9e01-585bb68ae4d2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.7641215} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f36adc28-2e89-4222-b9f6-5ac97adfc627","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.76441} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/89d15f3d-fbc4-4e53-bf23-a70686671a70"}}},"level":"info","message":"received a callback","requestID":"c34cc3b47ec27611aa845f5f6c82260c"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"c7c6f880-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"89d15f3d-fbc4-4e53-bf23-a70686671a70","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"c7c6f880-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/89d15f3d-fbc4-4e53-bf23-a70686671a70 204 39ms","method":"DELETE","requestID":"c7c6f880-782a-11ef-88d4-5fea3f61bb98","responseTime":39,"status":204,"url":"/peerconnections/89d15f3d-fbc4-4e53-bf23-a70686671a70"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e"},"level":"info","message":"Successfully finished experiment","requestID":"dacd3c9d9891e9383a247da823e5eca4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c7cf8400-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":161,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd30665c-e2ea-4b5d-9a92-41fff978a36f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2a901d0c-bc6f-4657-a285-6b9e517b4073","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.8051474} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":161,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.895647,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c7cf8400-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c7cf8400-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c7cf8400-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f/signaling 200 10ms","method":"POST","requestID":"c7cf8400-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5cec45bc-ab1f-42fa-b247-dbdece4fcd7e': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5cec45bc-ab1f-42fa-b247-dbdece4fcd7e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"02246eb3-2c83-4a6f-b170-b16ac155710a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.8118} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c7d158c0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"32690ef2-a4ca-4dcb-a6d3-a97d538360d6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.8121095} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"dacd3c9d9891e9383a247da823e5eca4","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":162,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddfad674-adb1-49f1-aee3-42cb5f2e6a27","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ba3efc03-9a64-41fe-bcb0-34c6813712ac","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.8170292} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":162,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.595009,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c7d158c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c7d158c0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c7d158c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27/signaling 200 10ms","method":"POST","requestID":"c7d158c0-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e","requestID":"dacd3c9d9891e9383a247da823e5eca4"} gateway-1 | {"time_local":"21/Sep/2024:15:04:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.142","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dacd3c9d9891e9383a247da823e5eca4"} experiment-1 | {"level":"info","message":"DELETE /experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e 204 141ms","method":"DELETE","requestID":"dacd3c9d9891e9383a247da823e5eca4","responseTime":141,"status":204,"url":"/experiments/5cec45bc-ab1f-42fa-b247-dbdece4fcd7e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"48ad5e4e96d38a5b36e395cfb0f66fdb","responseTime":114,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"c34cc3b47ec27611aa845f5f6c82260c","responseTime":114,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg","level":"info","message":"auth send jwt","requestID":"986b2ca02a9606767be57574e5d30c48"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"986b2ca02a9606767be57574e5d30c48","responseTime":5,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.122","http_referrer":"","http_user_agent":"node-fetch","requestID":"48ad5e4e96d38a5b36e395cfb0f66fdb"} gateway-1 | {"time_local":"21/Sep/2024:15:04:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.121","http_referrer":"","http_user_agent":"node-fetch","requestID":"c34cc3b47ec27611aa845f5f6c82260c"} device-1 | {"level":"info","message":"postDevices called","requestID":"986b2ca02a9606767be57574e5d30c48"} gateway-1 | {"time_local":"21/Sep/2024:15:04:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1543","request_time":"1.109","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"103aeb73a08d7112fffe3c4bd685d6ab"} gateway-1 | {"time_local":"21/Sep/2024:15:04:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1542","request_time":"0.926","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1ebe86d0d692153d6fa40a1897dce65a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":163,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":163,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.897396,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"986b2ca02a9606767be57574e5d30c48","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931060,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"986b2ca02a9606767be57574e5d30c48","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/ddfad674-adb1-49f1-aee3-42cb5f2e6a27' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/bd30665c-e2ea-4b5d-9a92-41fff978a36f' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd8400685-45d2-4113-8e2f-4a4751cc35af","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c5c9ea71-08a3-4449-b125-237c361cc89c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.909603} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"986b2ca02a9606767be57574e5d30c48","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9f96bf3b-c818-464f-97bf-9b9cc77676f2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.914646} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"986b2ca02a9606767be57574e5d30c48","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd8400685-45d2-4113-8e2f-4a4751cc35af","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"4ace76eb-6040-4655-92f3-cca8b5ef3703","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.9264586} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5819ea79-b664-422a-bfe8-b89cd49a2321","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.9265938} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"986b2ca02a9606767be57574e5d30c48","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd8400685-45d2-4113-8e2f-4a4751cc35af","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd8400685-45d2-4113-8e2f-4a4751cc35af","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:20.926443367Z"}]},"request_id":"fc0bb5f6-8ec4-4d89-bc72-46b0979773e3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.9307213} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"986b2ca02a9606767be57574e5d30c48","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"986b2ca02a9606767be57574e5d30c48"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"986b2ca02a9606767be57574e5d30c48","responseTime":48,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"986b2ca02a9606767be57574e5d30c48"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg","level":"info","message":"auth send jwt","requestID":"8cd0d348cd0c48d71628197cef2332ee"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8cd0d348cd0c48d71628197cef2332ee","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8cd0d348cd0c48d71628197cef2332ee"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":164,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":164,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.877627,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"8cd0d348cd0c48d71628197cef2332ee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931060,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MH0.bq8szjcfW3Ugv2i-Q6ngO_O5A-xzHBJNCIDLFc9Z4Bg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8cd0d348cd0c48d71628197cef2332ee","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6f118449-bd4e-446a-9aa9-7b2059261f8b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.9561799} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8cd0d348cd0c48d71628197cef2332ee","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"99bd5ff0-aa84-498f-91d6-e5487ad04c2e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.9614973} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"8cd0d348cd0c48d71628197cef2332ee","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"1f1702fe-a045-4c41-8013-1f75d9cae226","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.977067} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"55d7bca5-75fc-4f8d-89fa-424aa27ce544","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.9773238} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"8cd0d348cd0c48d71628197cef2332ee","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:20.977053306Z"}]},"request_id":"390ec1ce-0ad2-4db6-abcc-9ac6b462a760","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931060.9828222} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8cd0d348cd0c48d71628197cef2332ee","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8cd0d348cd0c48d71628197cef2332ee"} gateway-1 | {"time_local":"21/Sep/2024:15:04:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8cd0d348cd0c48d71628197cef2332ee"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"8cd0d348cd0c48d71628197cef2332ee","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MX0.Rk9lMH8aBZcLQ8MCC6lm4wDKXbNdZcusQLo-93_hRXw","level":"info","message":"auth send jwt","requestID":"f41c36827978a0091a533e60a563dacd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f41c36827978a0091a533e60a563dacd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f41c36827978a0091a533e60a563dacd"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":165,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:21Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":165,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.338997,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f41c36827978a0091a533e60a563dacd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931061,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MX0.Rk9lMH8aBZcLQ8MCC6lm4wDKXbNdZcusQLo-93_hRXw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f41c36827978a0091a533e60a563dacd","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:20.977053306Z"}]},"request_id":"5aa8a189-a498-49c5-ad07-dfa6eb4edf34","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931061.4817564} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f41c36827978a0091a533e60a563dacd","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"757161f3-758a-4542-9d41-c34eb13d1ae1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931061.489934} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"f41c36827978a0091a533e60a563dacd","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:20.977053306Z"}]},"request_id":"7ce60a3e-df22-4b3f-a2cb-f5df6cd09ae8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931061.503292} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f41c36827978a0091a533e60a563dacd","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f41c36827978a0091a533e60a563dacd"} gateway-1 | {"time_local":"21/Sep/2024:15:04:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.048","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f41c36827978a0091a533e60a563dacd"} device-1 | {"level":"info","message":"PATCH /devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d 200 43ms","method":"PATCH","requestID":"f41c36827978a0091a533e60a563dacd","responseTime":43,"status":200,"url":"/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MX0.Rk9lMH8aBZcLQ8MCC6lm4wDKXbNdZcusQLo-93_hRXw","level":"info","message":"auth send jwt","requestID":"ee2851da51ed758103ee8ee31ba101ae"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ee2851da51ed758103ee8ee31ba101ae","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ee2851da51ed758103ee8ee31ba101ae"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":166,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:21Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":166,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.271666,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ee2851da51ed758103ee8ee31ba101ae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931061,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2MX0.Rk9lMH8aBZcLQ8MCC6lm4wDKXbNdZcusQLo-93_hRXw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ee2851da51ed758103ee8ee31ba101ae","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ee2851da51ed758103ee8ee31ba101ae"} device-1 | {"level":"info","message":"POST /devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d/websocket 200 24ms","method":"POST","requestID":"ee2851da51ed758103ee8ee31ba101ae","responseTime":24,"status":200,"url":"/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:04:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.030","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"ee2851da51ed758103ee8ee31ba101ae"} device-1 | {"level":"info","message":"device 'http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e1a8378e3ac26b8697d957cb23d02c20","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e1a8378e3ac26b8697d957cb23d02c20","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/d8400685-45d2-4113-8e2f-4a4751cc35af/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e1a8378e3ac26b8697d957cb23d02c20"} device-1 | {"level":"info","message":"OPTIONS /devices/d8400685-45d2-4113-8e2f-4a4751cc35af/websocket 200 1ms","method":"OPTIONS","requestID":"e1a8378e3ac26b8697d957cb23d02c20","responseTime":1,"status":200,"url":"/devices/d8400685-45d2-4113-8e2f-4a4751cc35af/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w","level":"info","message":"auth send jwt","requestID":"b954815aa9b31dd39e5a9afe6b6c75d3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b954815aa9b31dd39e5a9afe6b6c75d3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b954815aa9b31dd39e5a9afe6b6c75d3"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":167,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":167,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.099538,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b954815aa9b31dd39e5a9afe6b6c75d3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931063,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b954815aa9b31dd39e5a9afe6b6c75d3","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b954815aa9b31dd39e5a9afe6b6c75d3"} device-1 | {"level":"info","message":"POST /devices/d8400685-45d2-4113-8e2f-4a4751cc35af/websocket 200 20ms","method":"POST","requestID":"b954815aa9b31dd39e5a9afe6b6c75d3","responseTime":20,"status":200,"url":"/devices/d8400685-45d2-4113-8e2f-4a4751cc35af/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:04:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d8400685-45d2-4113-8e2f-4a4751cc35af/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b954815aa9b31dd39e5a9afe6b6c75d3"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"23e4e42a9bf0d502ace4e5174e1d7a43","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"23e4e42a9bf0d502ace4e5174e1d7a43","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/d8400685-45d2-4113-8e2f-4a4751cc35af? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"23e4e42a9bf0d502ace4e5174e1d7a43"} device-1 | {"level":"info","message":"OPTIONS /devices/d8400685-45d2-4113-8e2f-4a4751cc35af? 200 1ms","method":"OPTIONS","requestID":"23e4e42a9bf0d502ace4e5174e1d7a43","responseTime":1,"status":200,"url":"/devices/d8400685-45d2-4113-8e2f-4a4751cc35af?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w","level":"info","message":"auth send jwt","requestID":"f21201e5b69eca284ea266e857c00bd0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f21201e5b69eca284ea266e857c00bd0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f21201e5b69eca284ea266e857c00bd0"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":168,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":168,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.703547,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f21201e5b69eca284ea266e857c00bd0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931063,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f21201e5b69eca284ea266e857c00bd0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd8400685-45d2-4113-8e2f-4a4751cc35af","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd8400685-45d2-4113-8e2f-4a4751cc35af","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:20.926443367Z"}]},"request_id":"2aa31c89-d345-4fdc-b8e2-e40b6cd76a9d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.1085384} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f21201e5b69eca284ea266e857c00bd0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dd224998-3afb-42a9-981a-e613e04d2961","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.115274} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f21201e5b69eca284ea266e857c00bd0","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd8400685-45d2-4113-8e2f-4a4751cc35af","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd8400685-45d2-4113-8e2f-4a4751cc35af","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:20.926443367Z"}]},"request_id":"a36c5433-a8d2-4887-8f52-ce264f207b2f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.1265142} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f21201e5b69eca284ea266e857c00bd0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f21201e5b69eca284ea266e857c00bd0"} gateway-1 | {"time_local":"21/Sep/2024:15:04:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/d8400685-45d2-4113-8e2f-4a4751cc35af? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.036","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f21201e5b69eca284ea266e857c00bd0"} device-1 | {"level":"info","message":"PATCH /devices/d8400685-45d2-4113-8e2f-4a4751cc35af? 200 31ms","method":"PATCH","requestID":"f21201e5b69eca284ea266e857c00bd0","responseTime":31,"status":200,"url":"/devices/d8400685-45d2-4113-8e2f-4a4751cc35af?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w","level":"info","message":"auth send jwt","requestID":"b38fc56c57c04f1d7d880a35b62db71b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b38fc56c57c04f1d7d880a35b62db71b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b38fc56c57c04f1d7d880a35b62db71b"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":169,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":169,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.008301,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b38fc56c57c04f1d7d880a35b62db71b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931063,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b38fc56c57c04f1d7d880a35b62db71b","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd8400685-45d2-4113-8e2f-4a4751cc35af","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd8400685-45d2-4113-8e2f-4a4751cc35af","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:20.926443367Z"}]},"request_id":"d0748a5a-39f1-4396-a932-f6be5ba14519","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.1503096} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b38fc56c57c04f1d7d880a35b62db71b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b38fc56c57c04f1d7d880a35b62db71b"} gateway-1 | {"time_local":"21/Sep/2024:15:04:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d8400685-45d2-4113-8e2f-4a4751cc35af? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b38fc56c57c04f1d7d880a35b62db71b"} device-1 | {"level":"info","message":"GET /devices/d8400685-45d2-4113-8e2f-4a4751cc35af? 200 15ms","method":"GET","requestID":"b38fc56c57c04f1d7d880a35b62db71b","responseTime":15,"status":200,"url":"/devices/d8400685-45d2-4113-8e2f-4a4751cc35af?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w","level":"info","message":"auth send jwt","requestID":"4793e35bd2e9498b597576f072448fdd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4793e35bd2e9498b597576f072448fdd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4793e35bd2e9498b597576f072448fdd"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":170,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":170,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.900049,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"4793e35bd2e9498b597576f072448fdd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931063,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4793e35bd2e9498b597576f072448fdd","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:20.977053306Z"}]},"request_id":"97b570f2-21b0-4e3e-b387-c74e3ec82036","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.1704876} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4793e35bd2e9498b597576f072448fdd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4793e35bd2e9498b597576f072448fdd"} device-1 | {"level":"info","message":"GET /devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d? 200 13ms","method":"GET","requestID":"4793e35bd2e9498b597576f072448fdd","responseTime":13,"status":200,"url":"/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4793e35bd2e9498b597576f072448fdd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w","level":"info","message":"auth send jwt","requestID":"df7e1864be4bd464afe2fa9d942bdfeb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"df7e1864be4bd464afe2fa9d942bdfeb","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"df7e1864be4bd464afe2fa9d942bdfeb"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":171,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":171,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.836503,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"df7e1864be4bd464afe2fa9d942bdfeb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931063,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"df7e1864be4bd464afe2fa9d942bdfeb","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cda9144-0a28-433d-be58-938696e13a27"},"level":"info","message":"Attempting to run experiment","requestID":"df7e1864be4bd464afe2fa9d942bdfeb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cda9144-0a28-433d-be58-938696e13a27"},"level":"info","message":"Attempting to book experiment","requestID":"df7e1864be4bd464afe2fa9d942bdfeb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cda9144-0a28-433d-be58-938696e13a27"},"level":"info","message":"Successfully booked experiment","requestID":"df7e1864be4bd464afe2fa9d942bdfeb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c941ffc0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c9424de0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":172,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":172,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.00563,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":173,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c941ffc0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931063,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c941ffc0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":173,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.778751,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c9424de0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931063,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c9424de0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd8400685-45d2-4113-8e2f-4a4751cc35af","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd8400685-45d2-4113-8e2f-4a4751cc35af","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:20.926443367Z"}]},"request_id":"90161bce-e7d1-45f7-99ce-47e3d5c77102","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.240306} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c941ffc0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:20.977053306Z"}]},"request_id":"2a053886-4192-46de-8ead-b6f7aa298cc7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.2420013} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c9424de0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c941ffc0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/d8400685-45d2-4113-8e2f-4a4751cc35af? 200 23ms","method":"GET","requestID":"c941ffc0-782a-11ef-88d4-5fea3f61bb98","responseTime":23,"status":200,"url":"/devices/d8400685-45d2-4113-8e2f-4a4751cc35af?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c9424de0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d? 200 22ms","method":"GET","requestID":"c9424de0-782a-11ef-88d4-5fea3f61bb98","responseTime":22,"status":200,"url":"/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cda9144-0a28-433d-be58-938696e13a27"},"level":"info","message":"Setting up experiment","requestID":"df7e1864be4bd464afe2fa9d942bdfeb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cda9144-0a28-433d-be58-938696e13a27"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"df7e1864be4bd464afe2fa9d942bdfeb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cda9144-0a28-433d-be58-938696e13a27"},"level":"info","message":"Successfully locked booking for experiment","requestID":"df7e1864be4bd464afe2fa9d942bdfeb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cda9144-0a28-433d-be58-938696e13a27"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"df7e1864be4bd464afe2fa9d942bdfeb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cda9144-0a28-433d-be58-938696e13a27"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"df7e1864be4bd464afe2fa9d942bdfeb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cda9144-0a28-433d-be58-938696e13a27"},"level":"info","message":"Attempting to update booking for experiment","requestID":"df7e1864be4bd464afe2fa9d942bdfeb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cda9144-0a28-433d-be58-938696e13a27"},"level":"info","message":"Successfully updated booking for experiment","requestID":"df7e1864be4bd464afe2fa9d942bdfeb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cda9144-0a28-433d-be58-938696e13a27"},"level":"info","message":"Successfully set up experiment","requestID":"df7e1864be4bd464afe2fa9d942bdfeb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c94de6a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c94e5bd0-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cda9144-0a28-433d-be58-938696e13a27"},"level":"info","message":"Successfully running experiment","requestID":"df7e1864be4bd464afe2fa9d942bdfeb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c94ed100-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":174,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":174,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.58983,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":175,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c94de6a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931063,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c94de6a0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":175,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.428434,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c94e5bd0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931063,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"c94e5bd0-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":176,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":176,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.699478,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd8400685-45d2-4113-8e2f-4a4751cc35af","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fd145deb-0719-4035-9ba3-908a2e288731","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.3263338} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c94ed100-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"c94ed100-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd8400685-45d2-4113-8e2f-4a4751cc35af","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd8400685-45d2-4113-8e2f-4a4751cc35af","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:20.926443367Z"}]},"request_id":"d5605295-6eb7-4286-a036-807a66adf8d7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.3287754} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:20.977053306Z"}]},"request_id":"5a11a7bc-bc31-4e45-98c1-2d3c40e2d208","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.3314245} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"c94de6a0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"c94e5bd0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c94ed100-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/d8400685-45d2-4113-8e2f-4a4751cc35af/signaling 200 32ms","method":"POST","requestID":"c94ed100-782a-11ef-88d4-5fea3f61bb98","responseTime":32,"status":200,"url":"/devices/d8400685-45d2-4113-8e2f-4a4751cc35af/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c94de6a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/d8400685-45d2-4113-8e2f-4a4751cc35af? 200 40ms","method":"GET","requestID":"c94de6a0-782a-11ef-88d4-5fea3f61bb98","responseTime":40,"status":200,"url":"/devices/d8400685-45d2-4113-8e2f-4a4751cc35af?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3cda9144-0a28-433d-be58-938696e13a27#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3cda9144-0a28-433d-be58-938696e13a27","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"26f22637-51b0-4722-bfdf-98048e38394d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.3466866} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c94e5bd0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eda40fac-43a0-4e89-984a-778fd461d5b5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.3472466} device-1 | {"level":"info","message":"GET /devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d? 200 40ms","method":"GET","requestID":"c94e5bd0-782a-11ef-88d4-5fea3f61bb98","responseTime":40,"status":200,"url":"/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c9549d60-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/update 200 33ms","method":"POST","requestID":"df7e1864be4bd464afe2fa9d942bdfeb","responseTime":33,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c95539a0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":177,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"88bcb5f3-4d0c-4782-958d-7eceb1a3d1db","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.3578498} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":177,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.445443,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":178,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c9549d60-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"c9549d60-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd8400685-45d2-4113-8e2f-4a4751cc35af","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bce8b28a-a1f7-46af-8d50-d1b0fba52561","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.3623798} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":178,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.229765,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/3cda9144-0a28-433d-be58-938696e13a27","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"df7e1864be4bd464afe2fa9d942bdfeb"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c95539a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} gateway-1 | {"time_local":"21/Sep/2024:15:04:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.188","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"df7e1864be4bd464afe2fa9d942bdfeb"} experiment-1 | {"level":"info","message":"POST /experiments? 201 184ms","method":"POST","requestID":"df7e1864be4bd464afe2fa9d942bdfeb","responseTime":184,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"c95539a0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c9549d60-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d/signaling 200 19ms","method":"POST","requestID":"c9549d60-782a-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c95539a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/d8400685-45d2-4113-8e2f-4a4751cc35af/signaling 200 17ms","method":"POST","requestID":"c95539a0-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/d8400685-45d2-4113-8e2f-4a4751cc35af/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w","level":"info","message":"auth send jwt","requestID":"e00d78b97b69d7bb7cb859996bfcf9d4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e00d78b97b69d7bb7cb859996bfcf9d4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e00d78b97b69d7bb7cb859996bfcf9d4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c9589500-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":179,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":179,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.97738,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":180,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e00d78b97b69d7bb7cb859996bfcf9d4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931063,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e00d78b97b69d7bb7cb859996bfcf9d4","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ea32cc12-f8ad-4765-8974-89eff025264e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.3811343} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":180,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.557023,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c9589500-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c9589500-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd8400685-45d2-4113-8e2f-4a4751cc35af","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd8400685-45d2-4113-8e2f-4a4751cc35af","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:20.926443367Z"}]},"request_id":"6b67fb9a-0b3c-4468-a4c7-39aac07fa7ef","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.3855107} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c9589500-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e00d78b97b69d7bb7cb859996bfcf9d4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d/signaling 200 10ms","method":"POST","requestID":"c9589500-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cda9144-0a28-433d-be58-938696e13a27"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"df7e1864be4bd464afe2fa9d942bdfeb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c95a90d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c95ab7e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e00d78b97b69d7bb7cb859996bfcf9d4"} gateway-1 | {"time_local":"21/Sep/2024:15:04:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d8400685-45d2-4113-8e2f-4a4751cc35af? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e00d78b97b69d7bb7cb859996bfcf9d4"} device-1 | {"level":"info","message":"GET /devices/d8400685-45d2-4113-8e2f-4a4751cc35af? 200 18ms","method":"GET","requestID":"e00d78b97b69d7bb7cb859996bfcf9d4","responseTime":18,"status":200,"url":"/devices/d8400685-45d2-4113-8e2f-4a4751cc35af?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":181,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":181,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.202273,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":182,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c95a90d0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931063,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c95a90d0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":182,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.782663,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c95ab7e0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931063,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c95ab7e0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w","level":"info","message":"auth send jwt","requestID":"92c304a72b0b6dee70668501afd040c3"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"92c304a72b0b6dee70668501afd040c3","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"92c304a72b0b6dee70668501afd040c3"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd8400685-45d2-4113-8e2f-4a4751cc35af","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd8400685-45d2-4113-8e2f-4a4751cc35af","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:20.926443367Z"}]},"request_id":"8c8bdc7d-d79e-41cb-8d52-fce89665a513","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.398261} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c95a90d0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:20.977053306Z"}]},"request_id":"96077457-3409-4874-9f53-7ace05dcc0d0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.399476} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c95ab7e0-782a-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":183,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":183,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.03541,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"92c304a72b0b6dee70668501afd040c3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931063,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c95a90d0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"92c304a72b0b6dee70668501afd040c3","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/d8400685-45d2-4113-8e2f-4a4751cc35af? 200 16ms","method":"GET","requestID":"c95a90d0-782a-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/d8400685-45d2-4113-8e2f-4a4751cc35af?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c95ab7e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d? 200 16ms","method":"GET","requestID":"c95ab7e0-782a-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cda9144-0a28-433d-be58-938696e13a27"},"level":"info","message":"Building connection plan","requestID":"df7e1864be4bd464afe2fa9d942bdfeb"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"b8488a30-d1ca-4467-a877-917596c921cb"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"0536d5dd-6968-40eb-85a1-bee67af6df59"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"f93ef255-d432-4bd1-95f4-f4da4f2de997"}]},"level":"info","message":"Built pairwise service configurations","requestID":"df7e1864be4bd464afe2fa9d942bdfeb"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"c95d7700-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"c95d7700-782a-11ef-938d-0b888d58857d"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:20.977053306Z"}]},"request_id":"19daddbf-7313-452a-9586-84c0cff822e4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.4094505} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"92c304a72b0b6dee70668501afd040c3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"92c304a72b0b6dee70668501afd040c3"} gateway-1 | {"time_local":"21/Sep/2024:15:04:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"92c304a72b0b6dee70668501afd040c3"} device-1 | {"level":"info","message":"GET /devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d? 200 15ms","method":"GET","requestID":"92c304a72b0b6dee70668501afd040c3","responseTime":15,"status":200,"url":"/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d?"} forwarding-1 | {"level":"info","message":"POST /rooms 201 4ms","method":"POST","requestID":"c95d7700-782a-11ef-938d-0b888d58857d","responseTime":4,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/8f9fd156-a9a3-4401-a98f-1dac8a05ad04?id=d6610a31-1993-4a44-9e1d-d8fb486ee63e","ws://localhost/rooms/8f9fd156-a9a3-4401-a98f-1dac8a05ad04?id=f62a5d2d-de84-4a9f-8d75-1f02909d4c90"]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"df7e1864be4bd464afe2fa9d942bdfeb"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"c95eaf80-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":184,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":184,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.142304,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c95eaf80-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931063,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c95eaf80-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"6a3b6789-16f5-4724-8b0d-484899b42486","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.4287314} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4090be79-e84f-4544-91da-31f2c07ffd3b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.429043} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c95eaf80-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"c95eaf80-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"c95eaf80-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/64ce4d2d-43d6-4ab0-9707-15907fff9116'","requestID":"c95eaf80-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/64ce4d2d-43d6-4ab0-9707-15907fff9116'","requestID":"c95eaf80-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"c95eaf80-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 27ms","method":"POST","requestID":"c95eaf80-782a-11ef-88d4-5fea3f61bb98","responseTime":27,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"c95eaf80-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/64ce4d2d-43d6-4ab0-9707-15907fff9116' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"64ce4d2d-43d6-4ab0-9707-15907fff9116","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"c9647be0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f62a5d2d-de84-4a9f-8d75-1f02909d4c90\" in room \"http://localhost/rooms/8f9fd156-a9a3-4401-a98f-1dac8a05ad04\"","requestID":"c9647be0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"c9647be0-782a-11ef-938d-0b888d58857d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3462bc10d8680e41c36a451aa482a8ec","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3462bc10d8680e41c36a451aa482a8ec","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"c964f110-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d6610a31-1993-4a44-9e1d-d8fb486ee63e\" in room \"http://localhost/rooms/8f9fd156-a9a3-4401-a98f-1dac8a05ad04\"","requestID":"c964f110-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"c964f110-782a-11ef-938d-0b888d58857d"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/64ce4d2d-43d6-4ab0-9707-15907fff9116"}}},"level":"info","message":"received a callback","requestID":"3462bc10d8680e41c36a451aa482a8ec"} device-1 | {"data":{"peerconnection":"64ce4d2d-43d6-4ab0-9707-15907fff9116","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"3462bc10d8680e41c36a451aa482a8ec","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"3462bc10d8680e41c36a451aa482a8ec"} device-1 | {"data":{"peerconnection":"64ce4d2d-43d6-4ab0-9707-15907fff9116","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cda9144-0a28-433d-be58-938696e13a27"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"df7e1864be4bd464afe2fa9d942bdfeb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c968c1a0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":185,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd8400685-45d2-4113-8e2f-4a4751cc35af","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"50d6284d-4262-4384-b36a-3556ad91ecb4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.488566} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/64ce4d2d-43d6-4ab0-9707-15907fff9116' to 'http://localhost/callbacks/experiment'"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":185,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.429807,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} device-1 | {"data":{"peerconnection":"64ce4d2d-43d6-4ab0-9707-15907fff9116","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c968c1a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c968c1a0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"aca2dc7a5b597d6634e486a264e8c82a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"aca2dc7a5b597d6634e486a264e8c82a","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/64ce4d2d-43d6-4ab0-9707-15907fff9116"}}},"level":"info","message":"received a callback","requestID":"aca2dc7a5b597d6634e486a264e8c82a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c968c1a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/d8400685-45d2-4113-8e2f-4a4751cc35af/signaling 200 12ms","method":"POST","requestID":"c968c1a0-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/d8400685-45d2-4113-8e2f-4a4751cc35af/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c96b0b90-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":186,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"c96b80c0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c3ab6417-16c8-410f-874d-89184519ca7b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.5020545} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":186,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.319843,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":187,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c96b0b90-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c96b0b90-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F64ce4d2d-43d6-4ab0-9707-15907fff9116","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a2ad9c14-7676-42dd-b08e-ad33a86b89a2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.504954} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":187,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.167282,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/64ce4d2d-43d6-4ab0-9707-15907fff9116","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c96b80c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/64ce4d2d-43d6-4ab0-9707-15907fff9116","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c96b80c0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c96b0b90-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d/signaling 200 11ms","method":"POST","requestID":"c96b0b90-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d/signaling"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"c96b80c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/64ce4d2d-43d6-4ab0-9707-15907fff9116 200 9ms","method":"GET","requestID":"c96b80c0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/peerconnections/64ce4d2d-43d6-4ab0-9707-15907fff9116"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 34ms","method":"POST","requestID":"aca2dc7a5b597d6634e486a264e8c82a","responseTime":34,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.036","http_referrer":"","http_user_agent":"node-fetch","requestID":"aca2dc7a5b597d6634e486a264e8c82a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c96f9f70-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":188,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd8400685-45d2-4113-8e2f-4a4751cc35af","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c7956ac1-06ed-488d-a7d8-7eaac589a415","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.5320742} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":188,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.941738,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c96f9f70-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c96f9f70-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c96f9f70-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/d8400685-45d2-4113-8e2f-4a4751cc35af/signaling 200 9ms","method":"POST","requestID":"c96f9f70-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/d8400685-45d2-4113-8e2f-4a4751cc35af/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c9714d20-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":189,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b62d96f9-894c-4bd0-b98e-b5e2c4c89f24","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.54317} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":189,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.527829,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c9714d20-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c9714d20-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c9714d20-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d/signaling 200 10ms","method":"POST","requestID":"c9714d20-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w","level":"info","message":"auth send jwt","requestID":"3019ef79b73c0a7e68a466b3b3fdf16b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3019ef79b73c0a7e68a466b3b3fdf16b","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/3cda9144-0a28-433d-be58-938696e13a27","requestID":"3019ef79b73c0a7e68a466b3b3fdf16b"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":190,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":190,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.724727,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3cda9144-0a28-433d-be58-938696e13a27","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"3019ef79b73c0a7e68a466b3b3fdf16b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/3cda9144-0a28-433d-be58-938696e13a27","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931063,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3019ef79b73c0a7e68a466b3b3fdf16b","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/3cda9144-0a28-433d-be58-938696e13a27","requestID":"3019ef79b73c0a7e68a466b3b3fdf16b"} gateway-1 | {"time_local":"21/Sep/2024:15:04:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/3cda9144-0a28-433d-be58-938696e13a27 HTTP/1.1","status": "200","body_bytes_sent":"885","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3019ef79b73c0a7e68a466b3b3fdf16b"} experiment-1 | {"level":"info","message":"GET /experiments/3cda9144-0a28-433d-be58-938696e13a27 200 13ms","method":"GET","requestID":"3019ef79b73c0a7e68a466b3b3fdf16b","responseTime":13,"status":200,"url":"/experiments/3cda9144-0a28-433d-be58-938696e13a27"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w","level":"info","message":"auth send jwt","requestID":"d154784048825ccf49bedc08e1d594bd"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d154784048825ccf49bedc08e1d594bd","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/3cda9144-0a28-433d-be58-938696e13a27","requestID":"d154784048825ccf49bedc08e1d594bd"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":191,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":191,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.310957,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3cda9144-0a28-433d-be58-938696e13a27","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d154784048825ccf49bedc08e1d594bd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/3cda9144-0a28-433d-be58-938696e13a27","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931063,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d154784048825ccf49bedc08e1d594bd","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cda9144-0a28-433d-be58-938696e13a27"},"level":"info","message":"Attempting to finish experiment","requestID":"d154784048825ccf49bedc08e1d594bd"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"c97a4dd0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":192,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":192,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.013839,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/64ce4d2d-43d6-4ab0-9707-15907fff9116","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c97a4dd0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/64ce4d2d-43d6-4ab0-9707-15907fff9116","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931063,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c97a4dd0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:04:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/8f9fd156-a9a3-4401-a98f-1dac8a05ad04?id=f62a5d2d-de84-4a9f-8d75-1f02909d4c90 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.155","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"269bce1129c955cd779a7845ee433fc1"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"f62a5d2d-de84-4a9f-8d75-1f02909d4c90\" in room \"http://localhost/rooms/8f9fd156-a9a3-4401-a98f-1dac8a05ad04\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/64ce4d2d-43d6-4ab0-9707-15907fff9116","device":"d8400685-45d2-4113-8e2f-4a4751cc35af","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"f62a5d2d-de84-4a9f-8d75-1f02909d4c90\" from room \"http://localhost/rooms/8f9fd156-a9a3-4401-a98f-1dac8a05ad04\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/64ce4d2d-43d6-4ab0-9707-15907fff9116' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/64ce4d2d-43d6-4ab0-9707-15907fff9116' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"64ce4d2d-43d6-4ab0-9707-15907fff9116","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"21/Sep/2024:15:04:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/8f9fd156-a9a3-4401-a98f-1dac8a05ad04?id=d6610a31-1993-4a44-9e1d-d8fb486ee63e HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.156","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b954391a570496b638e3ff5c907e826f"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"d6610a31-1993-4a44-9e1d-d8fb486ee63e\" in room \"http://localhost/rooms/8f9fd156-a9a3-4401-a98f-1dac8a05ad04\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"d6610a31-1993-4a44-9e1d-d8fb486ee63e\" from room \"http://localhost/rooms/8f9fd156-a9a3-4401-a98f-1dac8a05ad04\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7c82fd656acfb3b611f1c233feca7fe0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7c82fd656acfb3b611f1c233feca7fe0","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f40dabb128cbb57aeb64e3b43628dcb7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f40dabb128cbb57aeb64e3b43628dcb7","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/64ce4d2d-43d6-4ab0-9707-15907fff9116"}}},"level":"info","message":"received a callback","requestID":"7c82fd656acfb3b611f1c233feca7fe0"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F64ce4d2d-43d6-4ab0-9707-15907fff9116': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F64ce4d2d-43d6-4ab0-9707-15907fff9116","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"8596426f-c203-4ac2-8b06-c1c5704fc584","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.6169505} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2f563e18-cc3b-4dcc-85ad-ba875fb147f3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.6171684} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/64ce4d2d-43d6-4ab0-9707-15907fff9116"}}},"level":"info","message":"received a callback","requestID":"f40dabb128cbb57aeb64e3b43628dcb7"} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"c97a4dd0-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"64ce4d2d-43d6-4ab0-9707-15907fff9116","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"c97a4dd0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/64ce4d2d-43d6-4ab0-9707-15907fff9116 204 38ms","method":"DELETE","requestID":"c97a4dd0-782a-11ef-88d4-5fea3f61bb98","responseTime":38,"status":204,"url":"/peerconnections/64ce4d2d-43d6-4ab0-9707-15907fff9116"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cda9144-0a28-433d-be58-938696e13a27"},"level":"info","message":"Successfully finished experiment","requestID":"d154784048825ccf49bedc08e1d594bd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c9837590-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":193,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd8400685-45d2-4113-8e2f-4a4751cc35af","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"16c101f7-522f-4dcd-9e12-19fc5d98bb68","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.662746} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":193,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.970238,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c9837590-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c9837590-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c9837590-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/d8400685-45d2-4113-8e2f-4a4751cc35af/signaling 200 11ms","method":"POST","requestID":"c9837590-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/d8400685-45d2-4113-8e2f-4a4751cc35af/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3cda9144-0a28-433d-be58-938696e13a27': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3cda9144-0a28-433d-be58-938696e13a27","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"136d6f51-fc2c-48c2-b49d-68953d8aeabc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.670288} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eda86167-2713-4f86-a341-2ec521164e08","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.6705484} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c9857160-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"d154784048825ccf49bedc08e1d594bd","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":194,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"39ee6fbc-8c9b-426c-ab74-bcd79001210d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.676625} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":194,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.01739,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c9857160-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c9857160-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c9857160-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d/signaling 200 11ms","method":"POST","requestID":"c9857160-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/3cda9144-0a28-433d-be58-938696e13a27","requestID":"d154784048825ccf49bedc08e1d594bd"} gateway-1 | {"time_local":"21/Sep/2024:15:04:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/3cda9144-0a28-433d-be58-938696e13a27 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.160","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d154784048825ccf49bedc08e1d594bd"} experiment-1 | {"level":"info","message":"DELETE /experiments/3cda9144-0a28-433d-be58-938696e13a27 204 157ms","method":"DELETE","requestID":"d154784048825ccf49bedc08e1d594bd","responseTime":157,"status":204,"url":"/experiments/3cda9144-0a28-433d-be58-938696e13a27"} gateway-1 | {"time_local":"21/Sep/2024:15:04:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1542","request_time":"2.199","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c7d0c3a50500caf25d412c73e4ce1ec3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"7c82fd656acfb3b611f1c233feca7fe0","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.130","http_referrer":"","http_user_agent":"node-fetch","requestID":"7c82fd656acfb3b611f1c233feca7fe0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 125ms","method":"POST","requestID":"f40dabb128cbb57aeb64e3b43628dcb7","responseTime":125,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.131","http_referrer":"","http_user_agent":"node-fetch","requestID":"f40dabb128cbb57aeb64e3b43628dcb7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w","level":"info","message":"auth send jwt","requestID":"e1710edff2338860f324b11145b6f815"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e1710edff2338860f324b11145b6f815","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e1710edff2338860f324b11145b6f815"} gateway-1 | {"time_local":"21/Sep/2024:15:04:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1867","request_time":"0.692","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5037d14c7eb1345663409ca7fba419cd"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":195,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":195,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.552593,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e1710edff2338860f324b11145b6f815","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931063,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e1710edff2338860f324b11145b6f815","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/1631b8c9-ebba-4ff6-b6bb-79c908cb5a4d' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdebee469-dacf-4bc9-a8a1-cc61ab7fb1b2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4caf8a43-602d-4d4e-886d-cf5b3f2a164f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.766223} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e1710edff2338860f324b11145b6f815","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/d8400685-45d2-4113-8e2f-4a4751cc35af' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0a7842db-b7c5-4daa-9b8e-cb222a13ea9c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.77103} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e1710edff2338860f324b11145b6f815","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdebee469-dacf-4bc9-a8a1-cc61ab7fb1b2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"0da47473-0e06-45e7-8b24-6354797247e1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.7797787} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"51e35578-70f5-4e45-a30b-39646fddb220","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.7799141} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"e1710edff2338860f324b11145b6f815","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdebee469-dacf-4bc9-a8a1-cc61ab7fb1b2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdebee469-dacf-4bc9-a8a1-cc61ab7fb1b2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:23.779736418Z"}]},"request_id":"cfec413f-e402-4144-95d2-4297d7d83511","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.7843058} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e1710edff2338860f324b11145b6f815","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e1710edff2338860f324b11145b6f815"} gateway-1 | {"time_local":"21/Sep/2024:15:04:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e1710edff2338860f324b11145b6f815"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"e1710edff2338860f324b11145b6f815","responseTime":39,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w","level":"info","message":"auth send jwt","requestID":"a11f1dd39ebd6e34aeda09aaea698d65"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a11f1dd39ebd6e34aeda09aaea698d65","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a11f1dd39ebd6e34aeda09aaea698d65"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":196,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":196,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.893124,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a11f1dd39ebd6e34aeda09aaea698d65","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931063,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2M30.tZ4mhFCRQLN8yYbb3E6vwPE_WY2eJelaBEB0q3Bo0_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a11f1dd39ebd6e34aeda09aaea698d65","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f67124e9-bb98-4e38-b829-2955cb34f5e0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.8146832} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a11f1dd39ebd6e34aeda09aaea698d65","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ad6fd357-63a1-4093-9231-413181dc2cd4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.819673} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a11f1dd39ebd6e34aeda09aaea698d65","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"c799d687-ee20-4630-8cc5-7c2c4cd622e5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.831587} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"05bccdc5-bc7e-4d45-a263-9328f3bb01b2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.8323884} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"a11f1dd39ebd6e34aeda09aaea698d65","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:23.831559491Z"}]},"request_id":"a29788e2-9479-49e0-8899-1976124cab8a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931063.8366864} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a11f1dd39ebd6e34aeda09aaea698d65","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a11f1dd39ebd6e34aeda09aaea698d65"} gateway-1 | {"time_local":"21/Sep/2024:15:04:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a11f1dd39ebd6e34aeda09aaea698d65"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"a11f1dd39ebd6e34aeda09aaea698d65","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2NH0.qU6GcMfkNMcIsgmBtOeYxsuW7zXkbu6dPLOas18jx8g","level":"info","message":"auth send jwt","requestID":"988c5979aa4bc054c695e839fba88724"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"988c5979aa4bc054c695e839fba88724","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"988c5979aa4bc054c695e839fba88724"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":197,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:24Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":197,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.2024,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"988c5979aa4bc054c695e839fba88724","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931064,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2NH0.qU6GcMfkNMcIsgmBtOeYxsuW7zXkbu6dPLOas18jx8g"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"988c5979aa4bc054c695e839fba88724","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdebee469-dacf-4bc9-a8a1-cc61ab7fb1b2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdebee469-dacf-4bc9-a8a1-cc61ab7fb1b2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:23.779736418Z"}]},"request_id":"2b595cfe-fc14-4a7d-90e8-d670c2040e85","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931064.3196805} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"988c5979aa4bc054c695e839fba88724","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"66b2dafc-85a5-46c7-8a1e-ac4555f3229f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931064.3258812} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"988c5979aa4bc054c695e839fba88724","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdebee469-dacf-4bc9-a8a1-cc61ab7fb1b2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdebee469-dacf-4bc9-a8a1-cc61ab7fb1b2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:23.779736418Z"}]},"request_id":"4e156f06-00ce-42cf-9945-e94ae590608a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931064.3379827} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"988c5979aa4bc054c695e839fba88724","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"988c5979aa4bc054c695e839fba88724"} gateway-1 | {"time_local":"21/Sep/2024:15:04:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"988c5979aa4bc054c695e839fba88724"} device-1 | {"level":"info","message":"PATCH /devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2 200 34ms","method":"PATCH","requestID":"988c5979aa4bc054c695e839fba88724","responseTime":34,"status":200,"url":"/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2NH0.qU6GcMfkNMcIsgmBtOeYxsuW7zXkbu6dPLOas18jx8g","level":"info","message":"auth send jwt","requestID":"25a420d6cb7b9a9ddc25e3fe77861042"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"25a420d6cb7b9a9ddc25e3fe77861042","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"25a420d6cb7b9a9ddc25e3fe77861042"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":198,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:24Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":198,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.351718,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"25a420d6cb7b9a9ddc25e3fe77861042","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931064,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2NH0.qU6GcMfkNMcIsgmBtOeYxsuW7zXkbu6dPLOas18jx8g"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"25a420d6cb7b9a9ddc25e3fe77861042","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"25a420d6cb7b9a9ddc25e3fe77861042"} gateway-1 | {"time_local":"21/Sep/2024:15:04:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"25a420d6cb7b9a9ddc25e3fe77861042"} device-1 | {"level":"info","message":"POST /devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2/websocket 200 19ms","method":"POST","requestID":"25a420d6cb7b9a9ddc25e3fe77861042","responseTime":19,"status":200,"url":"/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"637364e03a24e6618d311270d6a692f6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"637364e03a24e6618d311270d6a692f6","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"637364e03a24e6618d311270d6a692f6"} device-1 | {"level":"info","message":"OPTIONS /devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe/websocket 200 2ms","method":"OPTIONS","requestID":"637364e03a24e6618d311270d6a692f6","responseTime":2,"status":200,"url":"/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2NX0.I2z1BRiYwqdswtYjfBN6tBykijeVnSxIj0ZeNgaBcNI","level":"info","message":"auth send jwt","requestID":"19134fea4b90c6c6a5901f62d5e93231"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"19134fea4b90c6c6a5901f62d5e93231","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"19134fea4b90c6c6a5901f62d5e93231"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":199,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:25Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":199,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.37101,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"19134fea4b90c6c6a5901f62d5e93231","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931065,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2NX0.I2z1BRiYwqdswtYjfBN6tBykijeVnSxIj0ZeNgaBcNI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"19134fea4b90c6c6a5901f62d5e93231","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"19134fea4b90c6c6a5901f62d5e93231"} device-1 | {"level":"info","message":"POST /devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe/websocket 200 41ms","method":"POST","requestID":"19134fea4b90c6c6a5901f62d5e93231","responseTime":41,"status":200,"url":"/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:04:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.047","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"19134fea4b90c6c6a5901f62d5e93231"} device-1 | {"level":"info","message":"device 'http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"490fdf5f9e9837eedd3fc164b7c58f85","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"490fdf5f9e9837eedd3fc164b7c58f85","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"490fdf5f9e9837eedd3fc164b7c58f85"} device-1 | {"level":"info","message":"OPTIONS /devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe? 200 1ms","method":"OPTIONS","requestID":"490fdf5f9e9837eedd3fc164b7c58f85","responseTime":1,"status":200,"url":"/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2NX0.I2z1BRiYwqdswtYjfBN6tBykijeVnSxIj0ZeNgaBcNI","level":"info","message":"auth send jwt","requestID":"c2e01d4a176ea37d4f6d8b0472a6361d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c2e01d4a176ea37d4f6d8b0472a6361d","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c2e01d4a176ea37d4f6d8b0472a6361d"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":200,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:25Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":200,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.724304,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c2e01d4a176ea37d4f6d8b0472a6361d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931065,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2NX0.I2z1BRiYwqdswtYjfBN6tBykijeVnSxIj0ZeNgaBcNI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c2e01d4a176ea37d4f6d8b0472a6361d","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:23.831559491Z"}]},"request_id":"8919f191-4259-4f9d-857a-5617d2ef9027","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931065.9572952} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c2e01d4a176ea37d4f6d8b0472a6361d","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9fef7627-d46e-4823-ae2c-326908923337","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931065.9641888} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c2e01d4a176ea37d4f6d8b0472a6361d","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:23.831559491Z"}]},"request_id":"2f9b6e4b-feb9-4705-8246-43cb0c3bfc04","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931065.9751568} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c2e01d4a176ea37d4f6d8b0472a6361d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c2e01d4a176ea37d4f6d8b0472a6361d"} device-1 | {"level":"info","message":"PATCH /devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe? 200 34ms","method":"PATCH","requestID":"c2e01d4a176ea37d4f6d8b0472a6361d","responseTime":34,"status":200,"url":"/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.041","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c2e01d4a176ea37d4f6d8b0472a6361d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2NX0.I2z1BRiYwqdswtYjfBN6tBykijeVnSxIj0ZeNgaBcNI","level":"info","message":"auth send jwt","requestID":"9df2cebab309674b517061f09ab03c9c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9df2cebab309674b517061f09ab03c9c","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9df2cebab309674b517061f09ab03c9c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":201,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:25Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":201,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.2397,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"9df2cebab309674b517061f09ab03c9c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931065,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2NX0.I2z1BRiYwqdswtYjfBN6tBykijeVnSxIj0ZeNgaBcNI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9df2cebab309674b517061f09ab03c9c","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdebee469-dacf-4bc9-a8a1-cc61ab7fb1b2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdebee469-dacf-4bc9-a8a1-cc61ab7fb1b2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:23.779736418Z"}]},"request_id":"38c1e5e1-82a7-43c3-9c93-a1476d09ec54","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.0053744} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"9df2cebab309674b517061f09ab03c9c","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9df2cebab309674b517061f09ab03c9c"} gateway-1 | {"time_local":"21/Sep/2024:15:04:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9df2cebab309674b517061f09ab03c9c"} device-1 | {"level":"info","message":"GET /devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2? 200 22ms","method":"GET","requestID":"9df2cebab309674b517061f09ab03c9c","responseTime":22,"status":200,"url":"/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2Nn0.B4mDczXbhW9ocV2k986QJG2hM4U-N65s6U-VmGescBA","level":"info","message":"auth send jwt","requestID":"09bda4587f20fb5758ab36355b5868a0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"09bda4587f20fb5758ab36355b5868a0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"09bda4587f20fb5758ab36355b5868a0"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":202,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":202,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.191177,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"09bda4587f20fb5758ab36355b5868a0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931066,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2Nn0.B4mDczXbhW9ocV2k986QJG2hM4U-N65s6U-VmGescBA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"09bda4587f20fb5758ab36355b5868a0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:23.831559491Z"}]},"request_id":"263ac2e9-1315-4a47-a107-68028b629989","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.0331209} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"09bda4587f20fb5758ab36355b5868a0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"09bda4587f20fb5758ab36355b5868a0"} gateway-1 | {"time_local":"21/Sep/2024:15:04:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"09bda4587f20fb5758ab36355b5868a0"} device-1 | {"level":"info","message":"GET /devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe? 200 18ms","method":"GET","requestID":"09bda4587f20fb5758ab36355b5868a0","responseTime":18,"status":200,"url":"/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2Nn0.B4mDczXbhW9ocV2k986QJG2hM4U-N65s6U-VmGescBA","level":"info","message":"auth send jwt","requestID":"c2105abc70787e5d02fbd5f4db93f24d"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"c2105abc70787e5d02fbd5f4db93f24d","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"c2105abc70787e5d02fbd5f4db93f24d"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":203,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":203,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.339558,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c2105abc70787e5d02fbd5f4db93f24d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931066,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2Nn0.B4mDczXbhW9ocV2k986QJG2hM4U-N65s6U-VmGescBA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c2105abc70787e5d02fbd5f4db93f24d","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e41ae70-30c8-4440-a5f0-37263b8da221"},"level":"info","message":"Attempting to run experiment","requestID":"c2105abc70787e5d02fbd5f4db93f24d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e41ae70-30c8-4440-a5f0-37263b8da221"},"level":"info","message":"Attempting to book experiment","requestID":"c2105abc70787e5d02fbd5f4db93f24d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e41ae70-30c8-4440-a5f0-37263b8da221"},"level":"info","message":"Successfully booked experiment","requestID":"c2105abc70787e5d02fbd5f4db93f24d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"caf7ed20-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"caf86250-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":204,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":204,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.374233,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":205,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"caf7ed20-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931066,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2Nn0.B4mDczXbhW9ocV2k986QJG2hM4U-N65s6U-VmGescBA"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"caf7ed20-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":205,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.667658,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"caf86250-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931066,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2Nn0.B4mDczXbhW9ocV2k986QJG2hM4U-N65s6U-VmGescBA"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"caf86250-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdebee469-dacf-4bc9-a8a1-cc61ab7fb1b2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdebee469-dacf-4bc9-a8a1-cc61ab7fb1b2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:23.779736418Z"}]},"request_id":"12ffb4fc-f87c-4610-9d5b-f40a42fc97b6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.1141772} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"caf7ed20-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:23.831559491Z"}]},"request_id":"1be3a666-ef8c-4cb7-896e-e2dab915a0f4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.1163015} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"caf86250-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"caf7ed20-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2? 200 29ms","method":"GET","requestID":"caf7ed20-782a-11ef-88d4-5fea3f61bb98","responseTime":29,"status":200,"url":"/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"caf86250-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe? 200 28ms","method":"GET","requestID":"caf86250-782a-11ef-88d4-5fea3f61bb98","responseTime":28,"status":200,"url":"/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e41ae70-30c8-4440-a5f0-37263b8da221"},"level":"info","message":"Setting up experiment","requestID":"c2105abc70787e5d02fbd5f4db93f24d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e41ae70-30c8-4440-a5f0-37263b8da221"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"c2105abc70787e5d02fbd5f4db93f24d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e41ae70-30c8-4440-a5f0-37263b8da221"},"level":"info","message":"Successfully locked booking for experiment","requestID":"c2105abc70787e5d02fbd5f4db93f24d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e41ae70-30c8-4440-a5f0-37263b8da221"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"c2105abc70787e5d02fbd5f4db93f24d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e41ae70-30c8-4440-a5f0-37263b8da221"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"c2105abc70787e5d02fbd5f4db93f24d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e41ae70-30c8-4440-a5f0-37263b8da221"},"level":"info","message":"Attempting to update booking for experiment","requestID":"c2105abc70787e5d02fbd5f4db93f24d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e41ae70-30c8-4440-a5f0-37263b8da221"},"level":"info","message":"Successfully updated booking for experiment","requestID":"c2105abc70787e5d02fbd5f4db93f24d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e41ae70-30c8-4440-a5f0-37263b8da221"},"level":"info","message":"Successfully set up experiment","requestID":"c2105abc70787e5d02fbd5f4db93f24d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cb066c10-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cb06ba30-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cb072f60-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":206,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":206,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.327497,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":207,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cb066c10-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931066,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2Nn0.B4mDczXbhW9ocV2k986QJG2hM4U-N65s6U-VmGescBA"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e41ae70-30c8-4440-a5f0-37263b8da221"},"level":"info","message":"Successfully running experiment","requestID":"c2105abc70787e5d02fbd5f4db93f24d"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"cb066c10-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":207,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.370373,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cb06ba30-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931066,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2Nn0.B4mDczXbhW9ocV2k986QJG2hM4U-N65s6U-VmGescBA"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"cb06ba30-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdebee469-dacf-4bc9-a8a1-cc61ab7fb1b2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdebee469-dacf-4bc9-a8a1-cc61ab7fb1b2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:23.779736418Z"}]},"request_id":"b0c5111f-54fa-4a9c-af28-854c4d1a0fd8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.2139785} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:23.831559491Z"}]},"request_id":"8a818913-4672-4015-9dc0-e786c71f000c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.216038} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"cb066c10-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"cb06ba30-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:53912","level":"info","msg":"Received request.","req_id":208,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdebee469-dacf-4bc9-a8a1-cc61ab7fb1b2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"15f35a10-dd31-4999-b651-96edfb1e2618","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.2200506} authorization-1 | {"client_addr":"127.0.0.1:53912","level":"info","msg":"Sent response.","req_id":208,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.357378,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cb072f60-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 20ms","method":"POST","requestID":"cb072f60-782a-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cb066c10-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2? 200 36ms","method":"GET","requestID":"cb066c10-782a-11ef-88d4-5fea3f61bb98","responseTime":36,"status":200,"url":"/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8e41ae70-30c8-4440-a5f0-37263b8da221#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8e41ae70-30c8-4440-a5f0-37263b8da221","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"3162bd03-8509-44c5-a454-fc043617521f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.2295687} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cb06ba30-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe? 200 36ms","method":"GET","requestID":"cb06ba30-782a-11ef-88d4-5fea3f61bb98","responseTime":36,"status":200,"url":"/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a3d5f043-c475-45ab-bf2e-7beabe415e62","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.2301779} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cb072f60-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2/signaling 200 36ms","method":"POST","requestID":"cb072f60-782a-11ef-88d4-5fea3f61bb98","responseTime":36,"status":200,"url":"/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"c2105abc70787e5d02fbd5f4db93f24d","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cb0cfbc0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cb0d70f0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":209,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdebee469-dacf-4bc9-a8a1-cc61ab7fb1b2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5f3e41f3-a09e-4231-9108-1413308b4736","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.2434015} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":210,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":209,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.80376,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cb0cfbc0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"cb0cfbc0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/8e41ae70-30c8-4440-a5f0-37263b8da221","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"c2105abc70787e5d02fbd5f4db93f24d"} gateway-1 | {"time_local":"21/Sep/2024:15:04:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.207","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c2105abc70787e5d02fbd5f4db93f24d"} experiment-1 | {"level":"info","message":"POST /experiments? 201 199ms","method":"POST","requestID":"c2105abc70787e5d02fbd5f4db93f24d","responseTime":199,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d80f23c3-38d8-4a87-86d7-fac47bf842ea","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.2500823} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":210,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":7.447319,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:26Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cb0cfbc0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2/signaling 200 16ms","method":"POST","requestID":"cb0cfbc0-782a-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2/signaling"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cb0d70f0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"cb0d70f0-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2Nn0.B4mDczXbhW9ocV2k986QJG2hM4U-N65s6U-VmGescBA","level":"info","message":"auth send jwt","requestID":"542920c63ff95ca77f60c50dafa8b844"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"542920c63ff95ca77f60c50dafa8b844","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cb103010-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"542920c63ff95ca77f60c50dafa8b844"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":211,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:26Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cb0d70f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe/signaling 200 24ms","method":"POST","requestID":"cb0d70f0-782a-11ef-88d4-5fea3f61bb98","responseTime":24,"status":200,"url":"/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4dd1c97d-31af-4118-820b-3ae1febf68c9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.2637997} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":212,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":212,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.21004,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"542920c63ff95ca77f60c50dafa8b844","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931066,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2Nn0.B4mDczXbhW9ocV2k986QJG2hM4U-N65s6U-VmGescBA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"542920c63ff95ca77f60c50dafa8b844","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":211,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.196457,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cb103010-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"cb103010-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdebee469-dacf-4bc9-a8a1-cc61ab7fb1b2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdebee469-dacf-4bc9-a8a1-cc61ab7fb1b2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:23.779736418Z"}]},"request_id":"5c1f01ee-6bd9-45b0-9cbb-6164c33481c2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.270961} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cb103010-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"542920c63ff95ca77f60c50dafa8b844","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe/signaling 200 15ms","method":"POST","requestID":"cb103010-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e41ae70-30c8-4440-a5f0-37263b8da221"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"c2105abc70787e5d02fbd5f4db93f24d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cb12c820-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cb133d50-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":213,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:26Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"542920c63ff95ca77f60c50dafa8b844"} gateway-1 | {"time_local":"21/Sep/2024:15:04:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"542920c63ff95ca77f60c50dafa8b844"} device-1 | {"level":"info","message":"GET /devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2? 200 19ms","method":"GET","requestID":"542920c63ff95ca77f60c50dafa8b844","responseTime":19,"status":200,"url":"/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":213,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.808577,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":214,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cb12c820-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931066,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2Nn0.B4mDczXbhW9ocV2k986QJG2hM4U-N65s6U-VmGescBA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cb12c820-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":214,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.011821,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cb133d50-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931066,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2Nn0.B4mDczXbhW9ocV2k986QJG2hM4U-N65s6U-VmGescBA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cb133d50-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2Nn0.B4mDczXbhW9ocV2k986QJG2hM4U-N65s6U-VmGescBA","level":"info","message":"auth send jwt","requestID":"874c5fea8064720c80bfb57d97f53da5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"874c5fea8064720c80bfb57d97f53da5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"874c5fea8064720c80bfb57d97f53da5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdebee469-dacf-4bc9-a8a1-cc61ab7fb1b2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdebee469-dacf-4bc9-a8a1-cc61ab7fb1b2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:23.779736418Z"}]},"request_id":"86723001-4584-4979-a2d4-fa2772f28ed5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.2850578} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"cb12c820-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:23.831559491Z"}]},"request_id":"2590fc63-f4c8-4f85-a2af-b4131e518adb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.286715} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"cb133d50-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":215,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":215,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.696458,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"874c5fea8064720c80bfb57d97f53da5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931066,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2Nn0.B4mDczXbhW9ocV2k986QJG2hM4U-N65s6U-VmGescBA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"874c5fea8064720c80bfb57d97f53da5","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cb12c820-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2? 200 18ms","method":"GET","requestID":"cb12c820-782a-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cb133d50-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe? 200 18ms","method":"GET","requestID":"cb133d50-782a-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:23.831559491Z"}]},"request_id":"fa7a63f7-e9c0-473e-8c28-0935e856082f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.295574} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e41ae70-30c8-4440-a5f0-37263b8da221"},"level":"info","message":"Building connection plan","requestID":"c2105abc70787e5d02fbd5f4db93f24d"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"58ec6de2-0ff2-4511-be65-9daca4d6c150"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"6b686934-e00b-4ea6-9922-ba6d039322ef"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"7769444b-3816-42c5-9cd4-5c34cd22831e"}]},"level":"info","message":"Built pairwise service configurations","requestID":"c2105abc70787e5d02fbd5f4db93f24d"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"874c5fea8064720c80bfb57d97f53da5","responseTime":3,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"cb1671a0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"cb1671a0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"cb1671a0-782a-11ef-938d-0b888d58857d","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/ba1fed36-ee90-456f-a939-583fe134fbb3?id=f029f6f4-eff8-427d-8f4e-a490ebc5043d","ws://localhost/rooms/ba1fed36-ee90-456f-a939-583fe134fbb3?id=145b16e0-8f4c-4ab0-8983-a89a0cdcb62d"]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"c2105abc70787e5d02fbd5f4db93f24d"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"cb1734f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"874c5fea8064720c80bfb57d97f53da5"} device-1 | {"level":"info","message":"GET /devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe? 200 20ms","method":"GET","requestID":"874c5fea8064720c80bfb57d97f53da5","responseTime":20,"status":200,"url":"/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"874c5fea8064720c80bfb57d97f53da5"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":216,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":216,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.865768,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cb1734f0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931066,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2Nn0.B4mDczXbhW9ocV2k986QJG2hM4U-N65s6U-VmGescBA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cb1734f0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"56e18e67-20d5-48ea-afc7-4e13218e0fc2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.3181453} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6f9654ca-c92f-4590-9609-f618e7cd133f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.3184633} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"cb1734f0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"cb1734f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"cb1734f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/bd29d09b-899e-4ba2-a802-1431e18f7317'","requestID":"cb1734f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/bd29d09b-899e-4ba2-a802-1431e18f7317'","requestID":"cb1734f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"cb1734f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 28ms","method":"POST","requestID":"cb1734f0-782a-11ef-88d4-5fea3f61bb98","responseTime":28,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"cb1734f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bd29d09b-899e-4ba2-a802-1431e18f7317' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bd29d09b-899e-4ba2-a802-1431e18f7317","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"cb1d7680-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f029f6f4-eff8-427d-8f4e-a490ebc5043d\" in room \"http://localhost/rooms/ba1fed36-ee90-456f-a939-583fe134fbb3\"","requestID":"cb1d7680-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"cb1d7680-782a-11ef-938d-0b888d58857d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cba870dafbb6b2e46b42ac1e4591f596","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"cba870dafbb6b2e46b42ac1e4591f596","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"cb1dc4a0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"145b16e0-8f4c-4ab0-8983-a89a0cdcb62d\" in room \"http://localhost/rooms/ba1fed36-ee90-456f-a939-583fe134fbb3\"","requestID":"cb1dc4a0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"cb1dc4a0-782a-11ef-938d-0b888d58857d"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/bd29d09b-899e-4ba2-a802-1431e18f7317"}}},"level":"info","message":"received a callback","requestID":"cba870dafbb6b2e46b42ac1e4591f596"} device-1 | {"data":{"peerconnection":"bd29d09b-899e-4ba2-a802-1431e18f7317","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 12ms","method":"POST","requestID":"cba870dafbb6b2e46b42ac1e4591f596","responseTime":12,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch","requestID":"cba870dafbb6b2e46b42ac1e4591f596"} device-1 | {"data":{"peerconnection":"bd29d09b-899e-4ba2-a802-1431e18f7317","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e41ae70-30c8-4440-a5f0-37263b8da221"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"c2105abc70787e5d02fbd5f4db93f24d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cb223170-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":217,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdebee469-dacf-4bc9-a8a1-cc61ab7fb1b2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"af6d4616-29d6-4988-8c8e-9a11a6e4a62f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.379774} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":217,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.834325,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cb223170-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bd29d09b-899e-4ba2-a802-1431e18f7317' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bd29d09b-899e-4ba2-a802-1431e18f7317","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cb223170-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"42e547a9de0ab212ca8ccd4e643d0886","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"42e547a9de0ab212ca8ccd4e643d0886","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/bd29d09b-899e-4ba2-a802-1431e18f7317"}}},"level":"info","message":"received a callback","requestID":"42e547a9de0ab212ca8ccd4e643d0886"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cb223170-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2/signaling 200 11ms","method":"POST","requestID":"cb223170-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cb242d40-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":218,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:26Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"cb24a270-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"829cbb11-b1b6-4400-8e10-f338144fba62","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.3928056} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":218,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.649743,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cb242d40-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"cb242d40-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":219,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbd29d09b-899e-4ba2-a802-1431e18f7317","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"df0d14ce-6291-4fdd-9607-5574345025ee","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.3963065} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":219,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.57729,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/bd29d09b-899e-4ba2-a802-1431e18f7317","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cb24a270-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/bd29d09b-899e-4ba2-a802-1431e18f7317","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cb24a270-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cb242d40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe/signaling 200 10ms","method":"POST","requestID":"cb242d40-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe/signaling"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"cb24a270-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/bd29d09b-899e-4ba2-a802-1431e18f7317 200 10ms","method":"GET","requestID":"cb24a270-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/peerconnections/bd29d09b-899e-4ba2-a802-1431e18f7317"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 34ms","method":"POST","requestID":"42e547a9de0ab212ca8ccd4e643d0886","responseTime":34,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.036","http_referrer":"","http_user_agent":"node-fetch","requestID":"42e547a9de0ab212ca8ccd4e643d0886"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cb28e830-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":220,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdebee469-dacf-4bc9-a8a1-cc61ab7fb1b2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aed82c74-e660-4fe7-bd90-2801c0f1f24b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.423459} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":220,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.039987,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cb28e830-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cb28e830-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cb28e830-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2/signaling 200 8ms","method":"POST","requestID":"cb28e830-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cb2a6ed0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":221,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e14aa187-1b43-48c2-82ff-4fc674f4144d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.4331005} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":221,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.033662,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cb2a6ed0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cb2a6ed0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cb2a6ed0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe/signaling 200 8ms","method":"POST","requestID":"cb2a6ed0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2Nn0.B4mDczXbhW9ocV2k986QJG2hM4U-N65s6U-VmGescBA","level":"info","message":"auth send jwt","requestID":"60b5f9e3d0b7ef13a637d008f81573ee"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"60b5f9e3d0b7ef13a637d008f81573ee","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/8e41ae70-30c8-4440-a5f0-37263b8da221","requestID":"60b5f9e3d0b7ef13a637d008f81573ee"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":222,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":222,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.636681,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8e41ae70-30c8-4440-a5f0-37263b8da221","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"60b5f9e3d0b7ef13a637d008f81573ee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/8e41ae70-30c8-4440-a5f0-37263b8da221","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931066,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2Nn0.B4mDczXbhW9ocV2k986QJG2hM4U-N65s6U-VmGescBA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"60b5f9e3d0b7ef13a637d008f81573ee","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/8e41ae70-30c8-4440-a5f0-37263b8da221","requestID":"60b5f9e3d0b7ef13a637d008f81573ee"} gateway-1 | {"time_local":"21/Sep/2024:15:04:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/8e41ae70-30c8-4440-a5f0-37263b8da221 HTTP/1.1","status": "200","body_bytes_sent":"885","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"60b5f9e3d0b7ef13a637d008f81573ee"} experiment-1 | {"level":"info","message":"GET /experiments/8e41ae70-30c8-4440-a5f0-37263b8da221 200 9ms","method":"GET","requestID":"60b5f9e3d0b7ef13a637d008f81573ee","responseTime":9,"status":200,"url":"/experiments/8e41ae70-30c8-4440-a5f0-37263b8da221"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2Nn0.B4mDczXbhW9ocV2k986QJG2hM4U-N65s6U-VmGescBA","level":"info","message":"auth send jwt","requestID":"318848575302b6cb4ab7f6af4534c65d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"318848575302b6cb4ab7f6af4534c65d","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/8e41ae70-30c8-4440-a5f0-37263b8da221","requestID":"318848575302b6cb4ab7f6af4534c65d"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":223,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":223,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.680611,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8e41ae70-30c8-4440-a5f0-37263b8da221","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"318848575302b6cb4ab7f6af4534c65d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/8e41ae70-30c8-4440-a5f0-37263b8da221","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931066,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2Nn0.B4mDczXbhW9ocV2k986QJG2hM4U-N65s6U-VmGescBA"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"318848575302b6cb4ab7f6af4534c65d","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e41ae70-30c8-4440-a5f0-37263b8da221"},"level":"info","message":"Attempting to finish experiment","requestID":"318848575302b6cb4ab7f6af4534c65d"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"cb31e8e0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":224,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":224,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.663938,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/bd29d09b-899e-4ba2-a802-1431e18f7317","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cb31e8e0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/bd29d09b-899e-4ba2-a802-1431e18f7317","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931066,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2Nn0.B4mDczXbhW9ocV2k986QJG2hM4U-N65s6U-VmGescBA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cb31e8e0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:04:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/ba1fed36-ee90-456f-a939-583fe134fbb3?id=f029f6f4-eff8-427d-8f4e-a490ebc5043d HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.145","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"75c83229a9eba9341ab0593442c6b621"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"f029f6f4-eff8-427d-8f4e-a490ebc5043d\" in room \"http://localhost/rooms/ba1fed36-ee90-456f-a939-583fe134fbb3\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"f029f6f4-eff8-427d-8f4e-a490ebc5043d\" from room \"http://localhost/rooms/ba1fed36-ee90-456f-a939-583fe134fbb3\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/bd29d09b-899e-4ba2-a802-1431e18f7317","device":"73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"21/Sep/2024:15:04:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/ba1fed36-ee90-456f-a939-583fe134fbb3?id=145b16e0-8f4c-4ab0-8983-a89a0cdcb62d HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.145","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4021aee211c54d60fc6f7115613b3dd3"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bd29d09b-899e-4ba2-a802-1431e18f7317' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/bd29d09b-899e-4ba2-a802-1431e18f7317' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bd29d09b-899e-4ba2-a802-1431e18f7317","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"145b16e0-8f4c-4ab0-8983-a89a0cdcb62d\" in room \"http://localhost/rooms/ba1fed36-ee90-456f-a939-583fe134fbb3\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"145b16e0-8f4c-4ab0-8983-a89a0cdcb62d\" from room \"http://localhost/rooms/ba1fed36-ee90-456f-a939-583fe134fbb3\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5c7989e066cf9e647f112fe0f81f89ff","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5c7989e066cf9e647f112fe0f81f89ff","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbd29d09b-899e-4ba2-a802-1431e18f7317': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbd29d09b-899e-4ba2-a802-1431e18f7317","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"28c4a904-4111-4ef6-8331-8d7d3a149107","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.4936464} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4b3e8cc5-c6c2-40a2-a79d-2e2ac6d96e79","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.4938462} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/bd29d09b-899e-4ba2-a802-1431e18f7317"}}},"level":"info","message":"received a callback","requestID":"5c7989e066cf9e647f112fe0f81f89ff"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0f8c73b15fdb0c9b94605c10b7126776","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0f8c73b15fdb0c9b94605c10b7126776","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"cb31e8e0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/bd29d09b-899e-4ba2-a802-1431e18f7317"}}},"level":"info","message":"received a callback","requestID":"0f8c73b15fdb0c9b94605c10b7126776"} device-1 | {"data":{"peerconnection":"bd29d09b-899e-4ba2-a802-1431e18f7317","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"cb31e8e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/bd29d09b-899e-4ba2-a802-1431e18f7317 204 35ms","method":"DELETE","requestID":"cb31e8e0-782a-11ef-88d4-5fea3f61bb98","responseTime":35,"status":204,"url":"/peerconnections/bd29d09b-899e-4ba2-a802-1431e18f7317"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e41ae70-30c8-4440-a5f0-37263b8da221"},"level":"info","message":"Successfully finished experiment","requestID":"318848575302b6cb4ab7f6af4534c65d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cb39d820-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":225,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdebee469-dacf-4bc9-a8a1-cc61ab7fb1b2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"60ef4349-9fd3-468f-b436-688ec40a965a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.5358617} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":225,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.439295,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cb39d820-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cb39d820-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cb39d820-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2/signaling 200 10ms","method":"POST","requestID":"cb39d820-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8e41ae70-30c8-4440-a5f0-37263b8da221': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8e41ae70-30c8-4440-a5f0-37263b8da221","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"58461c1c-4348-4fa8-8c5d-98a1ae59c0ce","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.5425525} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cb3bace0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a6b83578-4aac-4cca-a80f-637838e717ad","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.5428116} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"318848575302b6cb4ab7f6af4534c65d","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":226,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e5daa414-c2c8-49e7-a18b-1346462b7bc7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.5478222} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":226,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.564244,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cb3bace0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cb3bace0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cb3bace0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe/signaling 200 11ms","method":"POST","requestID":"cb3bace0-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/8e41ae70-30c8-4440-a5f0-37263b8da221","requestID":"318848575302b6cb4ab7f6af4534c65d"} gateway-1 | {"time_local":"21/Sep/2024:15:04:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/8e41ae70-30c8-4440-a5f0-37263b8da221 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.147","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"318848575302b6cb4ab7f6af4534c65d"} gateway-1 | {"time_local":"21/Sep/2024:15:04:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1543","request_time":"2.246","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"5419839a8bcd2a392eee14afa1cbc779"} experiment-1 | {"level":"info","message":"DELETE /experiments/8e41ae70-30c8-4440-a5f0-37263b8da221 204 146ms","method":"DELETE","requestID":"318848575302b6cb4ab7f6af4534c65d","responseTime":146,"status":204,"url":"/experiments/8e41ae70-30c8-4440-a5f0-37263b8da221"} gateway-1 | {"time_local":"21/Sep/2024:15:04:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"5c7989e066cf9e647f112fe0f81f89ff"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"5c7989e066cf9e647f112fe0f81f89ff","responseTime":123,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"0f8c73b15fdb0c9b94605c10b7126776","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"0f8c73b15fdb0c9b94605c10b7126776"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2Nn0.B4mDczXbhW9ocV2k986QJG2hM4U-N65s6U-VmGescBA","level":"info","message":"auth send jwt","requestID":"b0f6ed1617772c8ba99c49eabb7d9447"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b0f6ed1617772c8ba99c49eabb7d9447","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b0f6ed1617772c8ba99c49eabb7d9447"} gateway-1 | {"time_local":"21/Sep/2024:15:04:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1866","request_time":"0.715","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"713d60ed11c1cc29b2a2dfdd63274742"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":227,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":227,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.357693,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:26Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/debee469-dacf-4bc9-a8a1-cc61ab7fb1b2' closed"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b0f6ed1617772c8ba99c49eabb7d9447","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931066,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2Nn0.B4mDczXbhW9ocV2k986QJG2hM4U-N65s6U-VmGescBA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b0f6ed1617772c8ba99c49eabb7d9447","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/73b5fe2b-87b4-4ae0-a7ed-6aaa2bfe32fe' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c46aaba-cf65-4df5-a02d-4c13bc02b869","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9a16d35a-8b50-430f-83cf-1a85558e1a56","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.6472263} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b0f6ed1617772c8ba99c49eabb7d9447","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"28a9690f-967d-42c3-93d9-505b8beeddd8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.6546836} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"b0f6ed1617772c8ba99c49eabb7d9447","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c46aaba-cf65-4df5-a02d-4c13bc02b869","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"a2963ba6-3422-4f19-b6da-cd441e0c8e9b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.6647294} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7bb75206-f62b-40b9-9d10-4b610e85889f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.6657112} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"b0f6ed1617772c8ba99c49eabb7d9447","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c46aaba-cf65-4df5-a02d-4c13bc02b869","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c46aaba-cf65-4df5-a02d-4c13bc02b869","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:26.664702399Z"}]},"request_id":"b9e15b30-2918-4d9c-b619-1acee1308084","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.6718123} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b0f6ed1617772c8ba99c49eabb7d9447","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b0f6ed1617772c8ba99c49eabb7d9447"} gateway-1 | {"time_local":"21/Sep/2024:15:04:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b0f6ed1617772c8ba99c49eabb7d9447"} device-1 | {"level":"info","message":"POST /devices? 201 54ms","method":"POST","requestID":"b0f6ed1617772c8ba99c49eabb7d9447","responseTime":54,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2Nn0.B4mDczXbhW9ocV2k986QJG2hM4U-N65s6U-VmGescBA","level":"info","message":"auth send jwt","requestID":"e411220aa1b9aef9289715159dfc2b88"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e411220aa1b9aef9289715159dfc2b88","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e411220aa1b9aef9289715159dfc2b88"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":228,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":228,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.830324,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e411220aa1b9aef9289715159dfc2b88","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931066,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2Nn0.B4mDczXbhW9ocV2k986QJG2hM4U-N65s6U-VmGescBA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e411220aa1b9aef9289715159dfc2b88","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"60dfc295-7202-4462-abf4-a44a0c2b82b5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.69926} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e411220aa1b9aef9289715159dfc2b88","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2949779e-df4b-4a06-acbd-d7e644a8f612","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.7044234} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e411220aa1b9aef9289715159dfc2b88","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"b3630cbc-97c6-4390-a83e-65f6a08a405f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.7194378} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8687dcc9-c629-4678-b632-349adeaeb43a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.7197003} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"e411220aa1b9aef9289715159dfc2b88","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:26.719418482Z"}]},"request_id":"09165831-4a5c-4637-a83b-69050055cc31","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931066.723732} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e411220aa1b9aef9289715159dfc2b88","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e411220aa1b9aef9289715159dfc2b88"} gateway-1 | {"time_local":"21/Sep/2024:15:04:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e411220aa1b9aef9289715159dfc2b88"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"e411220aa1b9aef9289715159dfc2b88","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4","level":"info","message":"auth send jwt","requestID":"69127e24599a543600519ce434aaed71"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"69127e24599a543600519ce434aaed71","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4","level":"info","message":"auth send jwt","requestID":"714483e2c706c2a09642c6db31839781"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"69127e24599a543600519ce434aaed71"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"714483e2c706c2a09642c6db31839781","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"714483e2c706c2a09642c6db31839781"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":229,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":229,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.884304,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":230,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"69127e24599a543600519ce434aaed71","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931067,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"69127e24599a543600519ce434aaed71","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":230,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.815171,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"714483e2c706c2a09642c6db31839781","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931067,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"714483e2c706c2a09642c6db31839781","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:26.719418482Z"}]},"request_id":"5c7fbbd8-fa6e-41cc-a8a3-fa947826aa62","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.205018} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"69127e24599a543600519ce434aaed71","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c46aaba-cf65-4df5-a02d-4c13bc02b869","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c46aaba-cf65-4df5-a02d-4c13bc02b869","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:26.664702399Z"}]},"request_id":"0d93b415-de6e-4982-937f-1d7b76fdaaec","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.2057087} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"714483e2c706c2a09642c6db31839781","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f6c693d1-24e5-4007-a2fb-adbace46122e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.2103598} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"69127e24599a543600519ce434aaed71","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cfcb2159-bb04-46f6-bb7f-1f41c95e181a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.2124114} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"714483e2c706c2a09642c6db31839781","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c46aaba-cf65-4df5-a02d-4c13bc02b869","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c46aaba-cf65-4df5-a02d-4c13bc02b869","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:26.664702399Z"}]},"request_id":"585d70dc-2e65-4d0b-8ec5-a44d6faf0d8a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.2153056} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"714483e2c706c2a09642c6db31839781","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"714483e2c706c2a09642c6db31839781"} gateway-1 | {"time_local":"21/Sep/2024:15:04:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.031","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"714483e2c706c2a09642c6db31839781"} device-1 | {"level":"info","message":"PATCH /devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869 200 22ms","method":"PATCH","requestID":"714483e2c706c2a09642c6db31839781","responseTime":22,"status":200,"url":"/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4","level":"info","message":"auth send jwt","requestID":"9f313b25e46165853c178e52ba97c5d2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9f313b25e46165853c178e52ba97c5d2","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9f313b25e46165853c178e52ba97c5d2"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":231,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":231,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.898705,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"9f313b25e46165853c178e52ba97c5d2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931067,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9f313b25e46165853c178e52ba97c5d2","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:26.719418482Z"}]},"request_id":"9a91897c-d33c-42d0-aa5d-18bc68fad40f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.2267225} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"69127e24599a543600519ce434aaed71","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"69127e24599a543600519ce434aaed71"} gateway-1 | {"time_local":"21/Sep/2024:15:04:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.043","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"69127e24599a543600519ce434aaed71"} device-1 | {"level":"info","message":"PATCH /devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c 200 35ms","method":"PATCH","requestID":"69127e24599a543600519ce434aaed71","responseTime":35,"status":200,"url":"/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4","level":"info","message":"auth send jwt","requestID":"49385148971f77a51a45941076445423"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"49385148971f77a51a45941076445423","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"49385148971f77a51a45941076445423"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":232,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":232,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.657574,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"49385148971f77a51a45941076445423","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931067,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"49385148971f77a51a45941076445423","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9f313b25e46165853c178e52ba97c5d2"} gateway-1 | {"time_local":"21/Sep/2024:15:04:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"9f313b25e46165853c178e52ba97c5d2"} device-1 | {"level":"info","message":"POST /devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869/websocket 200 19ms","method":"POST","requestID":"9f313b25e46165853c178e52ba97c5d2","responseTime":20,"status":200,"url":"/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"49385148971f77a51a45941076445423"} gateway-1 | {"time_local":"21/Sep/2024:15:04:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"49385148971f77a51a45941076445423"} device-1 | {"level":"info","message":"POST /devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c/websocket 200 15ms","method":"POST","requestID":"49385148971f77a51a45941076445423","responseTime":15,"status":200,"url":"/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4","level":"info","message":"auth send jwt","requestID":"a3d205ebb56b732896d3ed67140343e5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a3d205ebb56b732896d3ed67140343e5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a3d205ebb56b732896d3ed67140343e5"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":233,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":233,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.022444,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a3d205ebb56b732896d3ed67140343e5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931067,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a3d205ebb56b732896d3ed67140343e5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c46aaba-cf65-4df5-a02d-4c13bc02b869","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c46aaba-cf65-4df5-a02d-4c13bc02b869","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:26.664702399Z"}]},"request_id":"87a313e0-029e-4bf7-b6f2-2952a3ecedda","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.2903028} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a3d205ebb56b732896d3ed67140343e5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a3d205ebb56b732896d3ed67140343e5"} gateway-1 | {"time_local":"21/Sep/2024:15:04:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a3d205ebb56b732896d3ed67140343e5"} device-1 | {"level":"info","message":"GET /devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869? 200 15ms","method":"GET","requestID":"a3d205ebb56b732896d3ed67140343e5","responseTime":15,"status":200,"url":"/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4","level":"info","message":"auth send jwt","requestID":"59801a0bdb2be7c7230bd1990e3bb134"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"59801a0bdb2be7c7230bd1990e3bb134","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"59801a0bdb2be7c7230bd1990e3bb134"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":234,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":234,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.988908,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"59801a0bdb2be7c7230bd1990e3bb134","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931067,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"59801a0bdb2be7c7230bd1990e3bb134","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:26.719418482Z"}]},"request_id":"2940e5dc-c473-4fe1-88c7-538a9d81345c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.3139262} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"59801a0bdb2be7c7230bd1990e3bb134","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"59801a0bdb2be7c7230bd1990e3bb134"} device-1 | {"level":"info","message":"GET /devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c? 200 15ms","method":"GET","requestID":"59801a0bdb2be7c7230bd1990e3bb134","responseTime":15,"status":200,"url":"/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"59801a0bdb2be7c7230bd1990e3bb134"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4","level":"info","message":"auth send jwt","requestID":"f07094e7d5e72fefafb7727e5fd605fc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f07094e7d5e72fefafb7727e5fd605fc","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"f07094e7d5e72fefafb7727e5fd605fc"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":235,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":235,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.128295,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f07094e7d5e72fefafb7727e5fd605fc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931067,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f07094e7d5e72fefafb7727e5fd605fc","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4efb2fc7-4293-40ad-b638-4813e7631098"},"level":"info","message":"Attempting to run experiment","requestID":"f07094e7d5e72fefafb7727e5fd605fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4efb2fc7-4293-40ad-b638-4813e7631098"},"level":"info","message":"Attempting to book experiment","requestID":"f07094e7d5e72fefafb7727e5fd605fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4efb2fc7-4293-40ad-b638-4813e7631098"},"level":"info","message":"Successfully booked experiment","requestID":"f07094e7d5e72fefafb7727e5fd605fc"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cbba04a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cbba52c0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":236,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":237,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":236,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.940145,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cbba04a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931067,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cbba04a0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":237,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.573747,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cbba52c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931067,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cbba52c0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c46aaba-cf65-4df5-a02d-4c13bc02b869","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c46aaba-cf65-4df5-a02d-4c13bc02b869","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:26.664702399Z"}]},"request_id":"7828c49d-ff0a-4866-9db6-967e4bcfb084","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.378933} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cbba04a0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:26.719418482Z"}]},"request_id":"72c1e773-af56-4af7-9512-c093c0d89c7e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.379607} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"cbba52c0-782a-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cbba04a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869? 200 20ms","method":"GET","requestID":"cbba04a0-782a-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cbba52c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c? 200 20ms","method":"GET","requestID":"cbba52c0-782a-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4efb2fc7-4293-40ad-b638-4813e7631098"},"level":"info","message":"Setting up experiment","requestID":"f07094e7d5e72fefafb7727e5fd605fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4efb2fc7-4293-40ad-b638-4813e7631098"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"f07094e7d5e72fefafb7727e5fd605fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4efb2fc7-4293-40ad-b638-4813e7631098"},"level":"info","message":"Successfully locked booking for experiment","requestID":"f07094e7d5e72fefafb7727e5fd605fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4efb2fc7-4293-40ad-b638-4813e7631098"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"f07094e7d5e72fefafb7727e5fd605fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4efb2fc7-4293-40ad-b638-4813e7631098"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"f07094e7d5e72fefafb7727e5fd605fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4efb2fc7-4293-40ad-b638-4813e7631098"},"level":"info","message":"Attempting to update booking for experiment","requestID":"f07094e7d5e72fefafb7727e5fd605fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4efb2fc7-4293-40ad-b638-4813e7631098"},"level":"info","message":"Successfully updated booking for experiment","requestID":"f07094e7d5e72fefafb7727e5fd605fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4efb2fc7-4293-40ad-b638-4813e7631098"},"level":"info","message":"Successfully set up experiment","requestID":"f07094e7d5e72fefafb7727e5fd605fc"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cbc639a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cbc687c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cbc6d5e0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":238,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":238,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.930454,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":239,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4efb2fc7-4293-40ad-b638-4813e7631098"},"level":"info","message":"Successfully running experiment","requestID":"f07094e7d5e72fefafb7727e5fd605fc"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cbc639a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931067,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cbc639a0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":239,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.046114,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cbc687c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931067,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cbc687c0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":240,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":240,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.364862,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c46aaba-cf65-4df5-a02d-4c13bc02b869","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cce1225d-8381-41eb-88e2-6ee7626f40f9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.460446} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cbc6d5e0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"cbc6d5e0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c46aaba-cf65-4df5-a02d-4c13bc02b869","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c46aaba-cf65-4df5-a02d-4c13bc02b869","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:26.664702399Z"}]},"request_id":"6b9d1f66-73ee-4bff-96ad-c6285aeaec9e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.4633915} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:26.719418482Z"}]},"request_id":"6f3b6b96-073a-4d7f-9b32-d1da891de532","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.464631} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"cbc639a0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cbc687c0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cbc639a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869? 200 23ms","method":"GET","requestID":"cbc639a0-782a-11ef-88d4-5fea3f61bb98","responseTime":23,"status":200,"url":"/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cbc6d5e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869/signaling 200 20ms","method":"POST","requestID":"cbc6d5e0-782a-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cbc687c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c? 200 22ms","method":"GET","requestID":"cbc687c0-782a-11ef-88d4-5fea3f61bb98","responseTime":22,"status":200,"url":"/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cbca3140-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cbca7f60-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4efb2fc7-4293-40ad-b638-4813e7631098#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4efb2fc7-4293-40ad-b638-4813e7631098","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"7228a874-5de9-4a9d-9691-7c81f2bf8adc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.4795284} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1210bc46-966a-4814-a07c-1d6a82786414","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.479694} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eb909d38-4212-496c-a642-27ccc2d7cd08","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.482479} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"f07094e7d5e72fefafb7727e5fd605fc","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":241,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":241,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.092943,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":242,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cbca3140-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"cbca3140-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c46aaba-cf65-4df5-a02d-4c13bc02b869","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eabdcbfa-ccea-45dc-b0bf-f66eafd22d78","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.485421} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":242,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.136348,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cbca7f60-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cbca7f60-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cbca3140-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c/signaling 200 13ms","method":"POST","requestID":"cbca3140-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cbca7f60-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869/signaling 200 13ms","method":"POST","requestID":"cbca7f60-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/4efb2fc7-4293-40ad-b638-4813e7631098","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"f07094e7d5e72fefafb7727e5fd605fc"} gateway-1 | {"time_local":"21/Sep/2024:15:04:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"816","request_time":"0.173","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f07094e7d5e72fefafb7727e5fd605fc"} experiment-1 | {"level":"info","message":"POST /experiments? 201 167ms","method":"POST","requestID":"f07094e7d5e72fefafb7727e5fd605fc","responseTime":167,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cbcd3e80-782a-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4","level":"info","message":"auth send jwt","requestID":"f721da08b9b897c6bea93401ad18216c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f721da08b9b897c6bea93401ad18216c","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":243,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f721da08b9b897c6bea93401ad18216c"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c1bd973b-8481-46a1-84b1-eb74342aa589","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.5013738} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":243,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.460177,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":244,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cbcd3e80-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cbcd3e80-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":244,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.636133,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f721da08b9b897c6bea93401ad18216c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931067,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f721da08b9b897c6bea93401ad18216c","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cbcd3e80-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c/signaling 200 11ms","method":"POST","requestID":"cbcd3e80-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c46aaba-cf65-4df5-a02d-4c13bc02b869","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c46aaba-cf65-4df5-a02d-4c13bc02b869","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:26.664702399Z"}]},"request_id":"2febbb12-f9f5-4cbe-9f43-f6ea6b2ea649","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.5074716} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4efb2fc7-4293-40ad-b638-4813e7631098"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"f07094e7d5e72fefafb7727e5fd605fc"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f721da08b9b897c6bea93401ad18216c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cbcf6160-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cbcf8870-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f721da08b9b897c6bea93401ad18216c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":245,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":245,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.721077,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":246,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} gateway-1 | {"time_local":"21/Sep/2024:15:04:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f721da08b9b897c6bea93401ad18216c"} device-1 | {"level":"info","message":"GET /devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869? 200 14ms","method":"GET","requestID":"f721da08b9b897c6bea93401ad18216c","responseTime":14,"status":200,"url":"/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cbcf6160-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931067,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cbcf6160-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":246,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.689183,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cbcf8870-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931067,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cbcf8870-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4","level":"info","message":"auth send jwt","requestID":"dfec42cd80761f2413e0b35a8a0b7473"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"dfec42cd80761f2413e0b35a8a0b7473","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c46aaba-cf65-4df5-a02d-4c13bc02b869","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c46aaba-cf65-4df5-a02d-4c13bc02b869","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:26.664702399Z"}]},"request_id":"47f0fa01-f80d-40d9-abc2-c73acd728150","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.5176437} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dfec42cd80761f2413e0b35a8a0b7473"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cbcf6160-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:26.719418482Z"}]},"request_id":"8c3ea394-6550-4149-94e6-76e2cca6ff77","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.5187643} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"cbcf8870-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":247,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cbcf6160-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":247,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.768065,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} device-1 | {"level":"info","message":"GET /devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869? 200 15ms","method":"GET","requestID":"cbcf6160-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dfec42cd80761f2413e0b35a8a0b7473","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931067,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"dfec42cd80761f2413e0b35a8a0b7473","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cbcf8870-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c? 200 19ms","method":"GET","requestID":"cbcf8870-782a-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:26.719418482Z"}]},"request_id":"91c99843-7527-4271-bf0c-ff2cc57a9cb7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.5305872} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4efb2fc7-4293-40ad-b638-4813e7631098"},"level":"info","message":"Building connection plan","requestID":"f07094e7d5e72fefafb7727e5fd605fc"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"6d7f0870-ce55-4a3b-9198-9114ce05fbb3"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"bb2636fc-be2c-41c1-a557-6888c7648618"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"0148e894-4ce8-43ca-bd63-cee82edbf9c0"}]},"level":"info","message":"Built pairwise service configurations","requestID":"f07094e7d5e72fefafb7727e5fd605fc"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dfec42cd80761f2413e0b35a8a0b7473","responseTime":3,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"cbd2e3d0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"cbd2e3d0-782a-11ef-938d-0b888d58857d"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dfec42cd80761f2413e0b35a8a0b7473"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"cbd2e3d0-782a-11ef-938d-0b888d58857d","responseTime":1,"status":201,"url":"/rooms"} gateway-1 | {"time_local":"21/Sep/2024:15:04:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dfec42cd80761f2413e0b35a8a0b7473"} device-1 | {"level":"info","message":"GET /devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c? 200 16ms","method":"GET","requestID":"dfec42cd80761f2413e0b35a8a0b7473","responseTime":16,"status":200,"url":"/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c?"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/baa61b18-1836-44a1-82f5-1c228d2f5d19?id=a5eb59a6-4e0e-4fa4-9894-7442a64dc1f7","ws://localhost/rooms/baa61b18-1836-44a1-82f5-1c228d2f5d19?id=1dcd49cf-05a1-40d8-bdf9-9ddb73c5f29f"]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"f07094e7d5e72fefafb7727e5fd605fc"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"cbd35900-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":248,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":248,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.867274,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cbd35900-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931067,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cbd35900-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"382e8a27-e45d-4766-b000-d8e8946e54cb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.5479865} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"13b60bc0-05fe-423e-9dfe-790e678474fc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.5482104} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"cbd35900-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"cbd35900-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"cbd35900-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/2437bdb5-6a0c-40f5-89f1-51a2beedeed0'","requestID":"cbd35900-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/2437bdb5-6a0c-40f5-89f1-51a2beedeed0'","requestID":"cbd35900-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"cbd35900-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 24ms","method":"POST","requestID":"cbd35900-782a-11ef-88d4-5fea3f61bb98","responseTime":24,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"cbd35900-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2437bdb5-6a0c-40f5-89f1-51a2beedeed0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2437bdb5-6a0c-40f5-89f1-51a2beedeed0","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"cbd86210-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a5eb59a6-4e0e-4fa4-9894-7442a64dc1f7\" in room \"http://localhost/rooms/baa61b18-1836-44a1-82f5-1c228d2f5d19\"","requestID":"cbd86210-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"cbd86210-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"cbd8b030-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1dcd49cf-05a1-40d8-bdf9-9ddb73c5f29f\" in room \"http://localhost/rooms/baa61b18-1836-44a1-82f5-1c228d2f5d19\"","requestID":"cbd8b030-782a-11ef-938d-0b888d58857d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e8daaa32d20d2234677e4e5335974ba9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"cbd8b030-782a-11ef-938d-0b888d58857d"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e8daaa32d20d2234677e4e5335974ba9","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/2437bdb5-6a0c-40f5-89f1-51a2beedeed0"}}},"level":"info","message":"received a callback","requestID":"e8daaa32d20d2234677e4e5335974ba9"} device-1 | {"data":{"peerconnection":"2437bdb5-6a0c-40f5-89f1-51a2beedeed0","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 14ms","method":"POST","requestID":"e8daaa32d20d2234677e4e5335974ba9","responseTime":14,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch","requestID":"e8daaa32d20d2234677e4e5335974ba9"} device-1 | {"data":{"peerconnection":"2437bdb5-6a0c-40f5-89f1-51a2beedeed0","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4efb2fc7-4293-40ad-b638-4813e7631098"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"f07094e7d5e72fefafb7727e5fd605fc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cbddb940-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2437bdb5-6a0c-40f5-89f1-51a2beedeed0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2437bdb5-6a0c-40f5-89f1-51a2beedeed0","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":249,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c46aaba-cf65-4df5-a02d-4c13bc02b869","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cb50196e-94b8-4a1f-8060-8371159069ee","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.6089106} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"da8220c3e12c3403fbaf2fcc665f0b8b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":249,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.347276,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"da8220c3e12c3403fbaf2fcc665f0b8b","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cbddb940-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"cbddb940-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/2437bdb5-6a0c-40f5-89f1-51a2beedeed0"}}},"level":"info","message":"received a callback","requestID":"da8220c3e12c3403fbaf2fcc665f0b8b"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"cbdf8e00-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cbddb940-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":250,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} device-1 | {"level":"info","message":"POST /devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869/signaling 200 15ms","method":"POST","requestID":"cbddb940-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2437bdb5-6a0c-40f5-89f1-51a2beedeed0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9bfd0482-4f5f-4506-ad6c-96a5b95a96b0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.6209528} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":250,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.36296,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2437bdb5-6a0c-40f5-89f1-51a2beedeed0","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cbdf8e00-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/2437bdb5-6a0c-40f5-89f1-51a2beedeed0","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cbe07860-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cbdf8e00-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":251,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"cbdf8e00-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/2437bdb5-6a0c-40f5-89f1-51a2beedeed0 200 9ms","method":"GET","requestID":"cbdf8e00-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/peerconnections/2437bdb5-6a0c-40f5-89f1-51a2beedeed0"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"812c196f-ef4c-4b56-93bf-3b560fee3d3c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.6262064} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":251,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.171925,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cbe07860-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cbe07860-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cbe07860-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c/signaling 200 9ms","method":"POST","requestID":"cbe07860-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"da8220c3e12c3403fbaf2fcc665f0b8b","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"da8220c3e12c3403fbaf2fcc665f0b8b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cbe385a0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":252,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d3caca64-9920-412e-989d-fbec47a042be","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.6473742} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":252,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.903693,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cbe385a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cbe385a0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cbe385a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c/signaling 200 9ms","method":"POST","requestID":"cbe385a0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cbe53350-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":253,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c46aaba-cf65-4df5-a02d-4c13bc02b869","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"04935008-8be9-4805-816d-0e4b16a4f092","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.6580055} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":253,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.565176,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cbe53350-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cbe53350-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cbe53350-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869/signaling 200 9ms","method":"POST","requestID":"cbe53350-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4","level":"info","message":"auth send jwt","requestID":"a3f0cd45e3d43834afb6752299b64f91"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a3f0cd45e3d43834afb6752299b64f91","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/4efb2fc7-4293-40ad-b638-4813e7631098","requestID":"a3f0cd45e3d43834afb6752299b64f91"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":254,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":254,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.789923,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4efb2fc7-4293-40ad-b638-4813e7631098","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a3f0cd45e3d43834afb6752299b64f91","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/4efb2fc7-4293-40ad-b638-4813e7631098","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931067,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a3f0cd45e3d43834afb6752299b64f91","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/4efb2fc7-4293-40ad-b638-4813e7631098","requestID":"a3f0cd45e3d43834afb6752299b64f91"} gateway-1 | {"time_local":"21/Sep/2024:15:04:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/4efb2fc7-4293-40ad-b638-4813e7631098 HTTP/1.1","status": "200","body_bytes_sent":"889","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a3f0cd45e3d43834afb6752299b64f91"} experiment-1 | {"level":"info","message":"GET /experiments/4efb2fc7-4293-40ad-b638-4813e7631098 200 10ms","method":"GET","requestID":"a3f0cd45e3d43834afb6752299b64f91","responseTime":10,"status":200,"url":"/experiments/4efb2fc7-4293-40ad-b638-4813e7631098"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4","level":"info","message":"auth send jwt","requestID":"66e1eb42e49ffe21509741da56802b44"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"66e1eb42e49ffe21509741da56802b44","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/4efb2fc7-4293-40ad-b638-4813e7631098","requestID":"66e1eb42e49ffe21509741da56802b44"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":255,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":255,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.969433,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4efb2fc7-4293-40ad-b638-4813e7631098","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"66e1eb42e49ffe21509741da56802b44","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/4efb2fc7-4293-40ad-b638-4813e7631098","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931067,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"66e1eb42e49ffe21509741da56802b44","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4efb2fc7-4293-40ad-b638-4813e7631098"},"level":"info","message":"Attempting to finish experiment","requestID":"66e1eb42e49ffe21509741da56802b44"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"cbed49a0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":256,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":256,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.791213,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2437bdb5-6a0c-40f5-89f1-51a2beedeed0","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cbed49a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/2437bdb5-6a0c-40f5-89f1-51a2beedeed0","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931067,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cbed49a0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:04:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/baa61b18-1836-44a1-82f5-1c228d2f5d19?id=a5eb59a6-4e0e-4fa4-9894-7442a64dc1f7 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.149","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"9243ea2094cd3ebf26da17606b0fd982"} gateway-1 | {"time_local":"21/Sep/2024:15:04:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/baa61b18-1836-44a1-82f5-1c228d2f5d19?id=1dcd49cf-05a1-40d8-bdf9-9ddb73c5f29f HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.148","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e573ff014008890f8541f99bc7fa48f7"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"a5eb59a6-4e0e-4fa4-9894-7442a64dc1f7\" in room \"http://localhost/rooms/baa61b18-1836-44a1-82f5-1c228d2f5d19\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"a5eb59a6-4e0e-4fa4-9894-7442a64dc1f7\" from room \"http://localhost/rooms/baa61b18-1836-44a1-82f5-1c228d2f5d19\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"1dcd49cf-05a1-40d8-bdf9-9ddb73c5f29f\" in room \"http://localhost/rooms/baa61b18-1836-44a1-82f5-1c228d2f5d19\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"1dcd49cf-05a1-40d8-bdf9-9ddb73c5f29f\" from room \"http://localhost/rooms/baa61b18-1836-44a1-82f5-1c228d2f5d19\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2437bdb5-6a0c-40f5-89f1-51a2beedeed0' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/2437bdb5-6a0c-40f5-89f1-51a2beedeed0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2437bdb5-6a0c-40f5-89f1-51a2beedeed0","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c16a0bcfc86ad05da90d8710022b5abc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c16a0bcfc86ad05da90d8710022b5abc","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2437bdb5-6a0c-40f5-89f1-51a2beedeed0': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2437bdb5-6a0c-40f5-89f1-51a2beedeed0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"25696cba-7af5-47d2-94fb-3791a0acc51d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.7218325} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"479dce56-14b5-4ab6-9523-cf314e67f91a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.7221224} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8eec831059a781de3f5cc65d7121b454","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/2437bdb5-6a0c-40f5-89f1-51a2beedeed0"}}},"level":"info","message":"received a callback","requestID":"c16a0bcfc86ad05da90d8710022b5abc"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8eec831059a781de3f5cc65d7121b454","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"cbed49a0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/2437bdb5-6a0c-40f5-89f1-51a2beedeed0"}}},"level":"info","message":"received a callback","requestID":"8eec831059a781de3f5cc65d7121b454"} device-1 | {"data":{"peerconnection":"2437bdb5-6a0c-40f5-89f1-51a2beedeed0","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"cbed49a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/2437bdb5-6a0c-40f5-89f1-51a2beedeed0 204 37ms","method":"DELETE","requestID":"cbed49a0-782a-11ef-88d4-5fea3f61bb98","responseTime":37,"status":204,"url":"/peerconnections/2437bdb5-6a0c-40f5-89f1-51a2beedeed0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4efb2fc7-4293-40ad-b638-4813e7631098"},"level":"info","message":"Successfully finished experiment","requestID":"66e1eb42e49ffe21509741da56802b44"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cbf6bf80-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":257,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"536bd1ae-4eb8-419a-b575-bbc0decfc541","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.7756371} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":257,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.295116,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cbf6bf80-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"cbf6bf80-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cbf6bf80-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c/signaling 200 15ms","method":"POST","requestID":"cbf6bf80-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4efb2fc7-4293-40ad-b638-4813e7631098': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4efb2fc7-4293-40ad-b638-4813e7631098","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"c44aacb5-d4a8-4e7a-9ee1-23bf9e054a5f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.7861557} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"68812cda-b1b0-4769-ad32-9ab456db7e3f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.7867105} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cbf9ccc0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"66e1eb42e49ffe21509741da56802b44","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":258,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c46aaba-cf65-4df5-a02d-4c13bc02b869","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5bcb6513-6e26-4de8-b7f5-6249f291af8b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.7949932} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":258,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.806899,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cbf9ccc0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"cbf9ccc0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cbf9ccc0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869/signaling 200 14ms","method":"POST","requestID":"cbf9ccc0-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/4efb2fc7-4293-40ad-b638-4813e7631098","requestID":"66e1eb42e49ffe21509741da56802b44"} gateway-1 | {"time_local":"21/Sep/2024:15:04:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/4efb2fc7-4293-40ad-b638-4813e7631098 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.169","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"66e1eb42e49ffe21509741da56802b44"} experiment-1 | {"level":"info","message":"DELETE /experiments/4efb2fc7-4293-40ad-b638-4813e7631098 204 165ms","method":"DELETE","requestID":"66e1eb42e49ffe21509741da56802b44","responseTime":165,"status":204,"url":"/experiments/4efb2fc7-4293-40ad-b638-4813e7631098"} gateway-1 | {"time_local":"21/Sep/2024:15:04:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1866","request_time":"0.615","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"6256eefa4182a45093a9b27801a99cfa"} gateway-1 | {"time_local":"21/Sep/2024:15:04:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1867","request_time":"0.607","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"01f189c8195546fb27e433e95966cb56"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 141ms","method":"POST","requestID":"c16a0bcfc86ad05da90d8710022b5abc","responseTime":141,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.143","http_referrer":"","http_user_agent":"node-fetch","requestID":"c16a0bcfc86ad05da90d8710022b5abc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 140ms","method":"POST","requestID":"8eec831059a781de3f5cc65d7121b454","responseTime":140,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.144","http_referrer":"","http_user_agent":"node-fetch","requestID":"8eec831059a781de3f5cc65d7121b454"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4","level":"info","message":"auth send jwt","requestID":"4ac81f0dd35c4a57bc7ce9e85f389cf7"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4ac81f0dd35c4a57bc7ce9e85f389cf7","responseTime":5,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/ac3653cf-7b3a-4032-8b8d-0cda8c5e2d1c' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"4ac81f0dd35c4a57bc7ce9e85f389cf7"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":259,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":259,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.961896,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"4ac81f0dd35c4a57bc7ce9e85f389cf7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931067,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4ac81f0dd35c4a57bc7ce9e85f389cf7","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/9c46aaba-cf65-4df5-a02d-4c13bc02b869' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F168ebd38-f0b4-4003-b343-bdee7596356a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"fb5c3506-e860-4551-af5a-d999f56cf0eb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.893965} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4ac81f0dd35c4a57bc7ce9e85f389cf7","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f9c16098-7620-461d-a192-2762a796094e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.9015448} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"4ac81f0dd35c4a57bc7ce9e85f389cf7","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F168ebd38-f0b4-4003-b343-bdee7596356a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"dc6ef703-c5ed-4818-b95e-367f99403ac0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.9141364} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"73528992-0479-47b0-85e2-f06c7b96dbf6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.9144602} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"4ac81f0dd35c4a57bc7ce9e85f389cf7","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F168ebd38-f0b4-4003-b343-bdee7596356a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F168ebd38-f0b4-4003-b343-bdee7596356a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:27.914120268Z"}]},"request_id":"b1037f4a-4185-40a4-80ff-a4685aad93d9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.9193563} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4ac81f0dd35c4a57bc7ce9e85f389cf7","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4ac81f0dd35c4a57bc7ce9e85f389cf7"} gateway-1 | {"time_local":"21/Sep/2024:15:04:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.062","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4ac81f0dd35c4a57bc7ce9e85f389cf7"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"4ac81f0dd35c4a57bc7ce9e85f389cf7","responseTime":52,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4","level":"info","message":"auth send jwt","requestID":"7d97e940876138e8de16adba45347e1d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7d97e940876138e8de16adba45347e1d","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7d97e940876138e8de16adba45347e1d"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":260,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":260,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.74555,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"7d97e940876138e8de16adba45347e1d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931067,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7d97e940876138e8de16adba45347e1d","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F392d6613-555b-44db-8b56-e06c7bf83b86","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1c5ae854-e098-4e9f-8012-c120af7dd84f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.9450603} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7d97e940876138e8de16adba45347e1d","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"10c357be-c62a-4e58-9475-cb6301cdf614","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.9508882} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"7d97e940876138e8de16adba45347e1d","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F392d6613-555b-44db-8b56-e06c7bf83b86","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"e1984273-1b91-4f8f-be4a-7d7f6bd14c60","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.9667077} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a5a2299b-f04b-4a01-aefc-d8bd716251e5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.966925} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"7d97e940876138e8de16adba45347e1d","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F392d6613-555b-44db-8b56-e06c7bf83b86","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F392d6613-555b-44db-8b56-e06c7bf83b86","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:27.966687191Z"}]},"request_id":"64587537-0062-4fdf-8aa2-dd7ae27f459c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.9717107} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7d97e940876138e8de16adba45347e1d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7d97e940876138e8de16adba45347e1d"} gateway-1 | {"time_local":"21/Sep/2024:15:04:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7d97e940876138e8de16adba45347e1d"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"7d97e940876138e8de16adba45347e1d","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4","level":"info","message":"auth send jwt","requestID":"aad48e9270ab6bfe9e8c45c1a398573a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"aad48e9270ab6bfe9e8c45c1a398573a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"aad48e9270ab6bfe9e8c45c1a398573a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":261,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":261,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.706125,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"aad48e9270ab6bfe9e8c45c1a398573a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931067,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2N30.PkBRJJotbOZDSAFKlQJIBXXNxLBI47spzWGj6pgRPo4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"aad48e9270ab6bfe9e8c45c1a398573a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe2697d2f-97cd-4a92-bb82-bf639551fc75","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2de18786-442d-4240-a9fb-22a55c09ebd3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931067.9968855} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"aad48e9270ab6bfe9e8c45c1a398573a","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d9afa5b4-f570-423d-a67b-247b7f51ebb9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.0026357} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"aad48e9270ab6bfe9e8c45c1a398573a","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe2697d2f-97cd-4a92-bb82-bf639551fc75","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"ad1f049a-4471-4bd8-8d02-c6d8a46182db","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.0129435} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"52fa9bca-2969-4d4e-8e09-64c076af5516","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.0131154} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"aad48e9270ab6bfe9e8c45c1a398573a","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe2697d2f-97cd-4a92-bb82-bf639551fc75","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe2697d2f-97cd-4a92-bb82-bf639551fc75","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:28.012927931Z"}]},"request_id":"95041af6-9256-4080-a55a-0585fc7d63ab","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.0182352} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"aad48e9270ab6bfe9e8c45c1a398573a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"aad48e9270ab6bfe9e8c45c1a398573a"} gateway-1 | {"time_local":"21/Sep/2024:15:04:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"aad48e9270ab6bfe9e8c45c1a398573a"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"aad48e9270ab6bfe9e8c45c1a398573a","responseTime":40,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4","level":"info","message":"auth send jwt","requestID":"471d75771b18c9d74b49e3abe3434be9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"471d75771b18c9d74b49e3abe3434be9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"471d75771b18c9d74b49e3abe3434be9"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":262,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":262,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.197307,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"471d75771b18c9d74b49e3abe3434be9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"471d75771b18c9d74b49e3abe3434be9","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ea3cd7c-4527-460d-9a3f-5b81a943e4ed","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"33a672e4-a208-45bd-b8c8-7c66aa9ed5e9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.0546227} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"471d75771b18c9d74b49e3abe3434be9","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bf27160a-1694-4785-a899-74f52980a6ca","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.0601776} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"471d75771b18c9d74b49e3abe3434be9","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ea3cd7c-4527-460d-9a3f-5b81a943e4ed","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"c4e657fc-7604-4c35-b9f2-1a4812bd85d1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.0762455} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"236b556c-2822-482b-bc0f-05579f65a14c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.0764024} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"471d75771b18c9d74b49e3abe3434be9","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ea3cd7c-4527-460d-9a3f-5b81a943e4ed","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ea3cd7c-4527-460d-9a3f-5b81a943e4ed","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:28.076231691Z"}]},"request_id":"f3f5a839-54a7-4ea7-80f8-210ae7508eb5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.0798845} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"471d75771b18c9d74b49e3abe3434be9","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"471d75771b18c9d74b49e3abe3434be9"} gateway-1 | {"time_local":"21/Sep/2024:15:04:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.060","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"471d75771b18c9d74b49e3abe3434be9"} device-1 | {"level":"info","message":"POST /devices? 201 55ms","method":"POST","requestID":"471d75771b18c9d74b49e3abe3434be9","responseTime":55,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4","level":"info","message":"auth send jwt","requestID":"1c6ad0ddbdb5b3407a67eb167c285e46"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1c6ad0ddbdb5b3407a67eb167c285e46","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1c6ad0ddbdb5b3407a67eb167c285e46"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":263,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":263,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.432821,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1c6ad0ddbdb5b3407a67eb167c285e46","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1c6ad0ddbdb5b3407a67eb167c285e46","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0ba4da8-f798-4f50-be2d-d795b7d73991","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4fa84190-8ced-420a-a950-807d136feb16","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.1067598} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1c6ad0ddbdb5b3407a67eb167c285e46","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0c1c3218-a78b-48e5-a0d3-713248ae8aee","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.1111438} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"1c6ad0ddbdb5b3407a67eb167c285e46","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0ba4da8-f798-4f50-be2d-d795b7d73991","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"13467bd1-4e11-4711-88b0-58932043fc4b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.122475} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"54a648ba-3cb3-451c-8db7-fbd62645d6c0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.1228285} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"1c6ad0ddbdb5b3407a67eb167c285e46","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0ba4da8-f798-4f50-be2d-d795b7d73991","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0ba4da8-f798-4f50-be2d-d795b7d73991","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:28.122443533Z"}]},"request_id":"cc61b70a-ebea-4a79-af4d-d8682887e762","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.128277} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1c6ad0ddbdb5b3407a67eb167c285e46","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1c6ad0ddbdb5b3407a67eb167c285e46"} gateway-1 | {"time_local":"21/Sep/2024:15:04:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1c6ad0ddbdb5b3407a67eb167c285e46"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"1c6ad0ddbdb5b3407a67eb167c285e46","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4","level":"info","message":"auth send jwt","requestID":"01f6465468638739a4b93911050ba2cb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"01f6465468638739a4b93911050ba2cb","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"01f6465468638739a4b93911050ba2cb"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":264,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":264,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.149639,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"01f6465468638739a4b93911050ba2cb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"01f6465468638739a4b93911050ba2cb","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee08bf7e-5d2b-4a5e-8290-706bc220f5b2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"47f031b9-daac-4dc8-a9f7-58eec02e7a2a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.1610153} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"01f6465468638739a4b93911050ba2cb","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5b544bae-4381-44d4-8707-a3b3374b1a09","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.1655328} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"01f6465468638739a4b93911050ba2cb","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee08bf7e-5d2b-4a5e-8290-706bc220f5b2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"f3c3762b-6324-400c-8716-2e80c60c69e3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.1828487} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"20d3eae8-973b-4be7-818a-631edeecf2ed","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.183358} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"01f6465468638739a4b93911050ba2cb","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee08bf7e-5d2b-4a5e-8290-706bc220f5b2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee08bf7e-5d2b-4a5e-8290-706bc220f5b2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:28.182816081Z"}]},"request_id":"b6248327-7bfc-4001-9608-17b38abec36a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.189009} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"01f6465468638739a4b93911050ba2cb","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"01f6465468638739a4b93911050ba2cb"} gateway-1 | {"time_local":"21/Sep/2024:15:04:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"01f6465468638739a4b93911050ba2cb"} device-1 | {"level":"info","message":"POST /devices? 201 54ms","method":"POST","requestID":"01f6465468638739a4b93911050ba2cb","responseTime":54,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4","level":"info","message":"auth send jwt","requestID":"90c09cb2b35270735768a33ded4aff5e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"90c09cb2b35270735768a33ded4aff5e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"90c09cb2b35270735768a33ded4aff5e"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":265,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":265,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.665917,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"90c09cb2b35270735768a33ded4aff5e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"90c09cb2b35270735768a33ded4aff5e","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070c0d49-2b30-47c5-a782-7946d61ab9c6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"62d1a7d0-4011-43f4-9eb6-737c15bfcdda","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.2223322} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"90c09cb2b35270735768a33ded4aff5e","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"44771fa6-a6bf-457e-b045-76fe60334e10","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.2302008} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"90c09cb2b35270735768a33ded4aff5e","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070c0d49-2b30-47c5-a782-7946d61ab9c6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"41c73f08-a2a6-472c-9abc-42287d4cf912","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.2435207} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f6c59562-d08a-410c-a082-ee1dc964c166","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.243703} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"90c09cb2b35270735768a33ded4aff5e","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070c0d49-2b30-47c5-a782-7946d61ab9c6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070c0d49-2b30-47c5-a782-7946d61ab9c6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:28.243487859Z"}]},"request_id":"8d7fa558-5276-41fb-b418-dc60c74c8cc2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.250616} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"90c09cb2b35270735768a33ded4aff5e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"90c09cb2b35270735768a33ded4aff5e"} gateway-1 | {"time_local":"21/Sep/2024:15:04:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"90c09cb2b35270735768a33ded4aff5e"} device-1 | {"level":"info","message":"POST /devices? 201 53ms","method":"POST","requestID":"90c09cb2b35270735768a33ded4aff5e","responseTime":53,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4","level":"info","message":"auth send jwt","requestID":"3509b51204a1f47cea75d6b2a4936a46"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3509b51204a1f47cea75d6b2a4936a46","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3509b51204a1f47cea75d6b2a4936a46"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":266,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":266,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.181484,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"3509b51204a1f47cea75d6b2a4936a46","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3509b51204a1f47cea75d6b2a4936a46","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5ed82e8a-8ec6-40b7-a13c-9679b7283c6a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0513e4d2-5ef2-4640-a13b-29f863761b38","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.283509} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3509b51204a1f47cea75d6b2a4936a46","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6a49c275-457b-4874-9610-888650a3d63a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.2909608} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"3509b51204a1f47cea75d6b2a4936a46","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5ed82e8a-8ec6-40b7-a13c-9679b7283c6a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"b9a05f0f-d238-461f-8343-ccd8c2a17917","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.3079898} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4438a9bc-c89a-4284-849b-2cdf2421305c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.3089917} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"3509b51204a1f47cea75d6b2a4936a46","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5ed82e8a-8ec6-40b7-a13c-9679b7283c6a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5ed82e8a-8ec6-40b7-a13c-9679b7283c6a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:28.307964016Z"}]},"request_id":"96fd12f8-06fc-45e9-b5fb-4ccfa78927ea","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.3152957} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3509b51204a1f47cea75d6b2a4936a46","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3509b51204a1f47cea75d6b2a4936a46"} gateway-1 | {"time_local":"21/Sep/2024:15:04:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.063","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3509b51204a1f47cea75d6b2a4936a46"} device-1 | {"level":"info","message":"POST /devices? 201 56ms","method":"POST","requestID":"3509b51204a1f47cea75d6b2a4936a46","responseTime":56,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4","level":"info","message":"auth send jwt","requestID":"f21cc1cfe8896320632896cf83956379"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f21cc1cfe8896320632896cf83956379","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f21cc1cfe8896320632896cf83956379"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":267,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":267,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.273136,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f21cc1cfe8896320632896cf83956379","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f21cc1cfe8896320632896cf83956379","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3de0782c-eea3-4def-b1ca-cd3f85f9ff74","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7771db62-2b0e-4315-b506-d018da404d20","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.3522532} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f21cc1cfe8896320632896cf83956379","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"58a2ba83-1e23-497e-b9e7-992162a56dea","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.3606746} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"f21cc1cfe8896320632896cf83956379","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3de0782c-eea3-4def-b1ca-cd3f85f9ff74","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"d46e26e0-677e-4f84-9c62-bb6226968d08","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.373974} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7c38aadc-92bd-44c0-bfbb-5f8c94dbe96b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.3741074} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"f21cc1cfe8896320632896cf83956379","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3de0782c-eea3-4def-b1ca-cd3f85f9ff74","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3de0782c-eea3-4def-b1ca-cd3f85f9ff74","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:28.373949081Z"}]},"request_id":"f9b6b226-93b7-4787-ad85-c1c366b03de2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.3814993} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f21cc1cfe8896320632896cf83956379","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f21cc1cfe8896320632896cf83956379"} device-1 | {"level":"info","message":"POST /devices? 201 56ms","method":"POST","requestID":"f21cc1cfe8896320632896cf83956379","responseTime":56,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.063","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f21cc1cfe8896320632896cf83956379"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4","level":"info","message":"auth send jwt","requestID":"8f601fb25eff1708afca1ad1562df7f3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8f601fb25eff1708afca1ad1562df7f3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8f601fb25eff1708afca1ad1562df7f3"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":268,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":268,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.432653,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"8f601fb25eff1708afca1ad1562df7f3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8f601fb25eff1708afca1ad1562df7f3","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e241f29-22c5-4b58-822d-e9b5d2a083a5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f9ad91c3-2b3d-489f-b43b-39d12a3195aa","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.4181256} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8f601fb25eff1708afca1ad1562df7f3","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9dbe07a3-f613-4956-9ebe-468fc957ec55","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.425542} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"8f601fb25eff1708afca1ad1562df7f3","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e241f29-22c5-4b58-822d-e9b5d2a083a5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"292768ab-cbef-4400-99ba-2cad46849c04","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.4427803} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"518a4b7f-2af6-4473-9c00-035a1784e99e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.4430199} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"8f601fb25eff1708afca1ad1562df7f3","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e241f29-22c5-4b58-822d-e9b5d2a083a5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e241f29-22c5-4b58-822d-e9b5d2a083a5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:28.442755397Z"}]},"request_id":"a4f43a8e-3b6f-4cc2-885a-3faa478049a6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.4496827} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8f601fb25eff1708afca1ad1562df7f3","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8f601fb25eff1708afca1ad1562df7f3"} gateway-1 | {"time_local":"21/Sep/2024:15:04:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"278","request_time":"0.066","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8f601fb25eff1708afca1ad1562df7f3"} device-1 | {"level":"info","message":"POST /devices? 201 60ms","method":"POST","requestID":"8f601fb25eff1708afca1ad1562df7f3","responseTime":60,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4","level":"info","message":"auth send jwt","requestID":"18c1250c48e87e18a8239a0064302dfe"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"18c1250c48e87e18a8239a0064302dfe","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"18c1250c48e87e18a8239a0064302dfe"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":269,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":269,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.419637,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"18c1250c48e87e18a8239a0064302dfe","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"18c1250c48e87e18a8239a0064302dfe","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2adc07ef-7ed7-47e2-bfeb-eb00d929c95f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f10e59de-4c1c-4183-a5fe-f822c91415e9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.4886925} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"18c1250c48e87e18a8239a0064302dfe","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5a831d50-768f-4c7b-972d-b8858d337945","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.4961445} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"18c1250c48e87e18a8239a0064302dfe","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2adc07ef-7ed7-47e2-bfeb-eb00d929c95f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"f3da0e8c-d0d1-4a62-b810-9386249cffd6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.5095525} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c62820ba-080a-4f72-b182-890c54d04b54","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.50988} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"18c1250c48e87e18a8239a0064302dfe","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2adc07ef-7ed7-47e2-bfeb-eb00d929c95f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2adc07ef-7ed7-47e2-bfeb-eb00d929c95f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:28.509524118Z"}]},"request_id":"74e07514-876b-4603-971d-98db43bc7f84","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.5162823} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"18c1250c48e87e18a8239a0064302dfe","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"18c1250c48e87e18a8239a0064302dfe"} gateway-1 | {"time_local":"21/Sep/2024:15:04:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1069","request_time":"0.063","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"18c1250c48e87e18a8239a0064302dfe"} device-1 | {"level":"info","message":"POST /devices? 201 57ms","method":"POST","requestID":"18c1250c48e87e18a8239a0064302dfe","responseTime":57,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4","level":"info","message":"auth send jwt","requestID":"6245d0001db3b8437a56038d390eebb8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6245d0001db3b8437a56038d390eebb8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6245d0001db3b8437a56038d390eebb8"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":270,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":270,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.127687,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"6245d0001db3b8437a56038d390eebb8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6245d0001db3b8437a56038d390eebb8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c891f9d-4cb7-4ed7-9978-33b1d058364c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ff007390-e1d4-40d8-885f-bec606be792b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.549215} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6245d0001db3b8437a56038d390eebb8","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0b40898f-632c-449a-849f-a667591a22c2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.5550766} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"6245d0001db3b8437a56038d390eebb8","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c891f9d-4cb7-4ed7-9978-33b1d058364c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"cf52a2f3-dde6-49f2-b9b4-6b9cdc3c3984","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.5656238} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e97fbe22-eb70-4997-8d26-b8af02e4e57f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.5658252} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"6245d0001db3b8437a56038d390eebb8","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c891f9d-4cb7-4ed7-9978-33b1d058364c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c891f9d-4cb7-4ed7-9978-33b1d058364c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:28.565595841Z"}]},"request_id":"f17fa676-1644-402a-a5f0-9ad47c888e2a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.5715537} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6245d0001db3b8437a56038d390eebb8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6245d0001db3b8437a56038d390eebb8"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"6245d0001db3b8437a56038d390eebb8","responseTime":48,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1347","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6245d0001db3b8437a56038d390eebb8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4","level":"info","message":"auth send jwt","requestID":"c391900ce83771b064ba9dd60883c674"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c391900ce83771b064ba9dd60883c674","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c391900ce83771b064ba9dd60883c674"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":271,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":271,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.436171,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c391900ce83771b064ba9dd60883c674","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c391900ce83771b064ba9dd60883c674","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb2cd012-ab50-4341-ac6b-1cf5530b0e40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"83025f21-2d56-440e-bfaf-c6b209eb6d05","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.6114104} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c391900ce83771b064ba9dd60883c674","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3905c3bb-4097-46f9-88b4-eed5df61a200","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.6177406} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c391900ce83771b064ba9dd60883c674","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb2cd012-ab50-4341-ac6b-1cf5530b0e40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"1328a8ef-27f6-4bec-93e8-5c79428fc7f6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.6312153} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8a140f99-7cd4-412e-90ca-41dac8517fc4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.631632} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"c391900ce83771b064ba9dd60883c674","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb2cd012-ab50-4341-ac6b-1cf5530b0e40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb2cd012-ab50-4341-ac6b-1cf5530b0e40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:28.631189244Z"}]},"request_id":"0e2378f2-49b7-4ef1-b04e-15d46dd79eb9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.63909} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c391900ce83771b064ba9dd60883c674","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c391900ce83771b064ba9dd60883c674"} gateway-1 | {"time_local":"21/Sep/2024:15:04:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1070","request_time":"0.065","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c391900ce83771b064ba9dd60883c674"} device-1 | {"level":"info","message":"POST /devices? 201 58ms","method":"POST","requestID":"c391900ce83771b064ba9dd60883c674","responseTime":58,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4","level":"info","message":"auth send jwt","requestID":"658d8cff440e0d16505a8263555b296d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"658d8cff440e0d16505a8263555b296d","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"658d8cff440e0d16505a8263555b296d"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":272,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":272,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.087961,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2adc07ef-7ed7-47e2-bfeb-eb00d929c95f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"658d8cff440e0d16505a8263555b296d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/2adc07ef-7ed7-47e2-bfeb-eb00d929c95f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"658d8cff440e0d16505a8263555b296d","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2adc07ef-7ed7-47e2-bfeb-eb00d929c95f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2adc07ef-7ed7-47e2-bfeb-eb00d929c95f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:28.509524118Z"}]},"request_id":"59b3328d-9312-4577-9517-d8037e14fe30","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.670847} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"658d8cff440e0d16505a8263555b296d","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"218ed84a-6f5f-496d-87c7-b92c20e13256","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.6799269} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"658d8cff440e0d16505a8263555b296d","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2adc07ef-7ed7-47e2-bfeb-eb00d929c95f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2adc07ef-7ed7-47e2-bfeb-eb00d929c95f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:28.509524118Z"}]},"request_id":"18285a9b-f509-4589-8cdb-bc59f366bfdc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.6941628} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"658d8cff440e0d16505a8263555b296d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"658d8cff440e0d16505a8263555b296d"} gateway-1 | {"time_local":"21/Sep/2024:15:04:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/2adc07ef-7ed7-47e2-bfeb-eb00d929c95f? HTTP/1.1","status": "200","body_bytes_sent":"1141","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"658d8cff440e0d16505a8263555b296d"} device-1 | {"level":"info","message":"PATCH /devices/2adc07ef-7ed7-47e2-bfeb-eb00d929c95f? 200 42ms","method":"PATCH","requestID":"658d8cff440e0d16505a8263555b296d","responseTime":42,"status":200,"url":"/devices/2adc07ef-7ed7-47e2-bfeb-eb00d929c95f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4","level":"info","message":"auth send jwt","requestID":"ae7ce3fcfe4954045b02615c4438e8ca"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ae7ce3fcfe4954045b02615c4438e8ca","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ae7ce3fcfe4954045b02615c4438e8ca"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":273,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":273,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.378402,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c891f9d-4cb7-4ed7-9978-33b1d058364c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ae7ce3fcfe4954045b02615c4438e8ca","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/0c891f9d-4cb7-4ed7-9978-33b1d058364c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ae7ce3fcfe4954045b02615c4438e8ca","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c891f9d-4cb7-4ed7-9978-33b1d058364c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c891f9d-4cb7-4ed7-9978-33b1d058364c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:28.565595841Z"}]},"request_id":"d299150e-5662-4396-91bd-dbf9ff47f61e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.722398} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ae7ce3fcfe4954045b02615c4438e8ca","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"347c10f2-b744-4587-b440-8c0f042db685","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.7308843} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"ae7ce3fcfe4954045b02615c4438e8ca","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c891f9d-4cb7-4ed7-9978-33b1d058364c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c891f9d-4cb7-4ed7-9978-33b1d058364c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:28.565595841Z"}]},"request_id":"aac59336-a2ae-474c-9ddf-e92a29e83376","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.7452183} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"ae7ce3fcfe4954045b02615c4438e8ca","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ae7ce3fcfe4954045b02615c4438e8ca"} gateway-1 | {"time_local":"21/Sep/2024:15:04:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/0c891f9d-4cb7-4ed7-9978-33b1d058364c? HTTP/1.1","status": "200","body_bytes_sent":"1491","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ae7ce3fcfe4954045b02615c4438e8ca"} device-1 | {"level":"info","message":"PATCH /devices/0c891f9d-4cb7-4ed7-9978-33b1d058364c? 200 43ms","method":"PATCH","requestID":"ae7ce3fcfe4954045b02615c4438e8ca","responseTime":43,"status":200,"url":"/devices/0c891f9d-4cb7-4ed7-9978-33b1d058364c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4","level":"info","message":"auth send jwt","requestID":"e9920fb1685283444b895d1b0404cfe3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e9920fb1685283444b895d1b0404cfe3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e9920fb1685283444b895d1b0404cfe3"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":274,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":274,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.333167,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb2cd012-ab50-4341-ac6b-1cf5530b0e40","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e9920fb1685283444b895d1b0404cfe3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/cb2cd012-ab50-4341-ac6b-1cf5530b0e40","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e9920fb1685283444b895d1b0404cfe3","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb2cd012-ab50-4341-ac6b-1cf5530b0e40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb2cd012-ab50-4341-ac6b-1cf5530b0e40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:28.631189244Z"}]},"request_id":"de54187f-20e1-48a6-ae38-21f86e5f2114","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.7749066} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e9920fb1685283444b895d1b0404cfe3","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a7fee2ad-866b-44ca-9ac2-97e9dfbe2cd5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.7818954} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e9920fb1685283444b895d1b0404cfe3","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb2cd012-ab50-4341-ac6b-1cf5530b0e40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb2cd012-ab50-4341-ac6b-1cf5530b0e40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:28.631189244Z"}]},"request_id":"70ac205e-3db4-4bd7-abaf-5f8ee3a030d7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.791419} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e9920fb1685283444b895d1b0404cfe3","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e9920fb1685283444b895d1b0404cfe3"} gateway-1 | {"time_local":"21/Sep/2024:15:04:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/cb2cd012-ab50-4341-ac6b-1cf5530b0e40? HTTP/1.1","status": "200","body_bytes_sent":"1142","request_time":"0.041","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e9920fb1685283444b895d1b0404cfe3"} device-1 | {"level":"info","message":"PATCH /devices/cb2cd012-ab50-4341-ac6b-1cf5530b0e40? 200 34ms","method":"PATCH","requestID":"e9920fb1685283444b895d1b0404cfe3","responseTime":34,"status":200,"url":"/devices/cb2cd012-ab50-4341-ac6b-1cf5530b0e40?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4","level":"info","message":"auth send jwt","requestID":"31b889a6472e0162770c874aecaca1a3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"31b889a6472e0162770c874aecaca1a3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"31b889a6472e0162770c874aecaca1a3"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":275,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":275,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.162035,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2adc07ef-7ed7-47e2-bfeb-eb00d929c95f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"31b889a6472e0162770c874aecaca1a3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/2adc07ef-7ed7-47e2-bfeb-eb00d929c95f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"31b889a6472e0162770c874aecaca1a3","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2adc07ef-7ed7-47e2-bfeb-eb00d929c95f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2adc07ef-7ed7-47e2-bfeb-eb00d929c95f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:28.509524118Z"}]},"request_id":"b8e6d906-55ac-4cf0-9295-1d210f205e81","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.8152714} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"31b889a6472e0162770c874aecaca1a3","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":276,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":276,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.368762,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":277,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":277,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.871198,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:53912","level":"info","msg":"Received request.","req_id":278,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:53912","level":"info","msg":"Sent response.","req_id":278,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.393429,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/168ebd38-f0b4-4003-b343-bdee7596356a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"31b889a6472e0162770c874aecaca1a3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/168ebd38-f0b4-4003-b343-bdee7596356a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"31b889a6472e0162770c874aecaca1a3","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/392d6613-555b-44db-8b56-e06c7bf83b86","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"31b889a6472e0162770c874aecaca1a3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/392d6613-555b-44db-8b56-e06c7bf83b86","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"31b889a6472e0162770c874aecaca1a3","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e2697d2f-97cd-4a92-bb82-bf639551fc75","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"31b889a6472e0162770c874aecaca1a3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e2697d2f-97cd-4a92-bb82-bf639551fc75","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"31b889a6472e0162770c874aecaca1a3","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:53926","level":"info","msg":"Received request.","req_id":279,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:53926","level":"info","msg":"Sent response.","req_id":279,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.431095,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c891f9d-4cb7-4ed7-9978-33b1d058364c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"31b889a6472e0162770c874aecaca1a3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/0c891f9d-4cb7-4ed7-9978-33b1d058364c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"31b889a6472e0162770c874aecaca1a3","responseTime":14,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"31b889a6472e0162770c874aecaca1a3"} gateway-1 | {"time_local":"21/Sep/2024:15:04:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2adc07ef-7ed7-47e2-bfeb-eb00d929c95f? HTTP/1.1","status": "200","body_bytes_sent":"1141","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"31b889a6472e0162770c874aecaca1a3"} device-1 | {"level":"info","message":"GET /devices/2adc07ef-7ed7-47e2-bfeb-eb00d929c95f? 200 42ms","method":"GET","requestID":"31b889a6472e0162770c874aecaca1a3","responseTime":42,"status":200,"url":"/devices/2adc07ef-7ed7-47e2-bfeb-eb00d929c95f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4","level":"info","message":"auth send jwt","requestID":"3fe1b018bffbc17dc05157886f281b6c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3fe1b018bffbc17dc05157886f281b6c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3fe1b018bffbc17dc05157886f281b6c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":280,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":280,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.644148,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c891f9d-4cb7-4ed7-9978-33b1d058364c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"3fe1b018bffbc17dc05157886f281b6c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/0c891f9d-4cb7-4ed7-9978-33b1d058364c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"3fe1b018bffbc17dc05157886f281b6c","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c891f9d-4cb7-4ed7-9978-33b1d058364c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c891f9d-4cb7-4ed7-9978-33b1d058364c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:28.565595841Z"}]},"request_id":"f591b895-46b2-4352-b23a-aa5df4a91b29","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.8705862} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3fe1b018bffbc17dc05157886f281b6c","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":281,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":281,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.132991,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":282,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":282,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.195359,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:53912","level":"info","msg":"Received request.","req_id":283,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:53912","level":"info","msg":"Sent response.","req_id":283,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.232694,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:53926","level":"info","msg":"Received request.","req_id":284,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6ea3cd7c-4527-460d-9a3f-5b81a943e4ed","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"3fe1b018bffbc17dc05157886f281b6c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/6ea3cd7c-4527-460d-9a3f-5b81a943e4ed","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"3fe1b018bffbc17dc05157886f281b6c","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e0ba4da8-f798-4f50-be2d-d795b7d73991","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"3fe1b018bffbc17dc05157886f281b6c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e0ba4da8-f798-4f50-be2d-d795b7d73991","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"3fe1b018bffbc17dc05157886f281b6c","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee08bf7e-5d2b-4a5e-8290-706bc220f5b2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"3fe1b018bffbc17dc05157886f281b6c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ee08bf7e-5d2b-4a5e-8290-706bc220f5b2","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"3fe1b018bffbc17dc05157886f281b6c","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:53926","level":"info","msg":"Sent response.","req_id":284,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.965437,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/070c0d49-2b30-47c5-a782-7946d61ab9c6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"3fe1b018bffbc17dc05157886f281b6c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/070c0d49-2b30-47c5-a782-7946d61ab9c6","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"3fe1b018bffbc17dc05157886f281b6c","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":285,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":285,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.854668,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":286,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2adc07ef-7ed7-47e2-bfeb-eb00d929c95f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"3fe1b018bffbc17dc05157886f281b6c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/2adc07ef-7ed7-47e2-bfeb-eb00d929c95f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3fe1b018bffbc17dc05157886f281b6c","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":286,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.029272,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb2cd012-ab50-4341-ac6b-1cf5530b0e40","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"3fe1b018bffbc17dc05157886f281b6c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/cb2cd012-ab50-4341-ac6b-1cf5530b0e40","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3fe1b018bffbc17dc05157886f281b6c","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3fe1b018bffbc17dc05157886f281b6c"} gateway-1 | {"time_local":"21/Sep/2024:15:04:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0c891f9d-4cb7-4ed7-9978-33b1d058364c? HTTP/1.1","status": "200","body_bytes_sent":"1491","request_time":"0.064","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3fe1b018bffbc17dc05157886f281b6c"} device-1 | {"level":"info","message":"GET /devices/0c891f9d-4cb7-4ed7-9978-33b1d058364c? 200 58ms","method":"GET","requestID":"3fe1b018bffbc17dc05157886f281b6c","responseTime":58,"status":200,"url":"/devices/0c891f9d-4cb7-4ed7-9978-33b1d058364c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4","level":"info","message":"auth send jwt","requestID":"0f6ab356b3dbfeefc574d333e2ee793a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0f6ab356b3dbfeefc574d333e2ee793a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0f6ab356b3dbfeefc574d333e2ee793a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":287,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":287,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.161894,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb2cd012-ab50-4341-ac6b-1cf5530b0e40","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0f6ab356b3dbfeefc574d333e2ee793a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/cb2cd012-ab50-4341-ac6b-1cf5530b0e40","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0f6ab356b3dbfeefc574d333e2ee793a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb2cd012-ab50-4341-ac6b-1cf5530b0e40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb2cd012-ab50-4341-ac6b-1cf5530b0e40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:28.631189244Z"}]},"request_id":"6d65f3a3-a711-4909-b79e-7c3072a71450","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.9302993} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0f6ab356b3dbfeefc574d333e2ee793a","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":288,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":288,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.095523,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":289,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":289,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.521857,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:53912","level":"info","msg":"Received request.","req_id":290,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:53912","level":"info","msg":"Sent response.","req_id":290,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.512329,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:53926","level":"info","msg":"Received request.","req_id":291,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5ed82e8a-8ec6-40b7-a13c-9679b7283c6a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0f6ab356b3dbfeefc574d333e2ee793a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/5ed82e8a-8ec6-40b7-a13c-9679b7283c6a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"0f6ab356b3dbfeefc574d333e2ee793a","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:53926","level":"info","msg":"Sent response.","req_id":291,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.720168,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3de0782c-eea3-4def-b1ca-cd3f85f9ff74","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0f6ab356b3dbfeefc574d333e2ee793a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3de0782c-eea3-4def-b1ca-cd3f85f9ff74","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"0f6ab356b3dbfeefc574d333e2ee793a","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0e241f29-22c5-4b58-822d-e9b5d2a083a5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0f6ab356b3dbfeefc574d333e2ee793a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/0e241f29-22c5-4b58-822d-e9b5d2a083a5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"0f6ab356b3dbfeefc574d333e2ee793a","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2adc07ef-7ed7-47e2-bfeb-eb00d929c95f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0f6ab356b3dbfeefc574d333e2ee793a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/2adc07ef-7ed7-47e2-bfeb-eb00d929c95f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"0f6ab356b3dbfeefc574d333e2ee793a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0f6ab356b3dbfeefc574d333e2ee793a"} gateway-1 | {"time_local":"21/Sep/2024:15:04:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cb2cd012-ab50-4341-ac6b-1cf5530b0e40? HTTP/1.1","status": "200","body_bytes_sent":"1142","request_time":"0.036","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0f6ab356b3dbfeefc574d333e2ee793a"} device-1 | {"level":"info","message":"GET /devices/cb2cd012-ab50-4341-ac6b-1cf5530b0e40? 200 30ms","method":"GET","requestID":"0f6ab356b3dbfeefc574d333e2ee793a","responseTime":30,"status":200,"url":"/devices/cb2cd012-ab50-4341-ac6b-1cf5530b0e40?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4","level":"info","message":"auth send jwt","requestID":"7c32f62a9dacf864c7f17c72f394b17b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7c32f62a9dacf864c7f17c72f394b17b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7c32f62a9dacf864c7f17c72f394b17b"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":292,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":292,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.307445,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"7c32f62a9dacf864c7f17c72f394b17b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931068,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OH0.0E6wyxQzWgihwE2OXhkAR8EfVSZMHMD8ZxGXzAJRPY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7c32f62a9dacf864c7f17c72f394b17b","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97a19d6-6968-4a66-9654-0393df4b5309","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b5e39ded-2314-431a-a6a8-7f001b3dc627","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.9814646} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7c32f62a9dacf864c7f17c72f394b17b","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"15c57e81-b675-47f5-a6d1-5e7f1cb22ccf","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.986622} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"7c32f62a9dacf864c7f17c72f394b17b","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97a19d6-6968-4a66-9654-0393df4b5309","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"67307fb1-d64a-4196-b1f0-73f977e39c7a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.9988928} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5ed0c67b-4738-4390-868d-eb15a234b2d4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931068.9992995} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"7c32f62a9dacf864c7f17c72f394b17b","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97a19d6-6968-4a66-9654-0393df4b5309","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97a19d6-6968-4a66-9654-0393df4b5309","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:28.998867603Z"}]},"request_id":"e099530f-7afe-49f8-92f8-b5f91b4ebaa1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931069.0070508} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7c32f62a9dacf864c7f17c72f394b17b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7c32f62a9dacf864c7f17c72f394b17b"} gateway-1 | {"time_local":"21/Sep/2024:15:04:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"284","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7c32f62a9dacf864c7f17c72f394b17b"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"7c32f62a9dacf864c7f17c72f394b17b","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OX0.aPJS2VSUS8SNurdKUslM1AVHGYWiqKWsUhX2bcBM5pg","level":"info","message":"auth send jwt","requestID":"f79cf015159236f9c9ca68e55c05dca0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f79cf015159236f9c9ca68e55c05dca0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f79cf015159236f9c9ca68e55c05dca0"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":293,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:29Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":293,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.166353,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f79cf015159236f9c9ca68e55c05dca0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931069,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OX0.aPJS2VSUS8SNurdKUslM1AVHGYWiqKWsUhX2bcBM5pg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f79cf015159236f9c9ca68e55c05dca0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae9e8885-5acf-423a-b2d9-a6c81b4a50c6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"71d94587-4f44-40ea-a8dd-bf25a94103df","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931069.0406516} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f79cf015159236f9c9ca68e55c05dca0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"45277541-8027-4ef6-a3ae-f1107b7644e7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931069.0458903} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f79cf015159236f9c9ca68e55c05dca0","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae9e8885-5acf-423a-b2d9-a6c81b4a50c6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"64b94e7e-cc90-4711-80da-836ce530a6d3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931069.0578663} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"04ba9095-32ac-440a-8602-edf844db0a1f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931069.0584402} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"f79cf015159236f9c9ca68e55c05dca0","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae9e8885-5acf-423a-b2d9-a6c81b4a50c6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae9e8885-5acf-423a-b2d9-a6c81b4a50c6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:29.057833074Z"}]},"request_id":"3dce93a3-ba7e-4bbd-91c4-5e1e45155648","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931069.0663207} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f79cf015159236f9c9ca68e55c05dca0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f79cf015159236f9c9ca68e55c05dca0"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"f79cf015159236f9c9ca68e55c05dca0","responseTime":50,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"706","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f79cf015159236f9c9ca68e55c05dca0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OX0.aPJS2VSUS8SNurdKUslM1AVHGYWiqKWsUhX2bcBM5pg","level":"info","message":"auth send jwt","requestID":"96942cfeb0e1dc8c3421dc760fc97327"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"96942cfeb0e1dc8c3421dc760fc97327","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"96942cfeb0e1dc8c3421dc760fc97327"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":294,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:29Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":294,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.802048,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"96942cfeb0e1dc8c3421dc760fc97327","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931069,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA2OX0.aPJS2VSUS8SNurdKUslM1AVHGYWiqKWsUhX2bcBM5pg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"96942cfeb0e1dc8c3421dc760fc97327","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdfa391e5-c2a3-44cb-bd7b-dbe039cb6433","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"18d76f49-8ef7-4802-abf7-e31dc6de6d3f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931069.1061206} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"96942cfeb0e1dc8c3421dc760fc97327","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b99872e5-10eb-4465-add7-1f1dff595ccf","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931069.1133344} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"96942cfeb0e1dc8c3421dc760fc97327","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdfa391e5-c2a3-44cb-bd7b-dbe039cb6433","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"b1d4333b-eb32-4ecc-a87a-1d10b28f751b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931069.1271544} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e64b51e4-e137-4566-86b5-32f5b78190a3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931069.127609} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"96942cfeb0e1dc8c3421dc760fc97327","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdfa391e5-c2a3-44cb-bd7b-dbe039cb6433","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdfa391e5-c2a3-44cb-bd7b-dbe039cb6433","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:29.127124507Z"}]},"request_id":"674743cd-75ba-4fca-85b2-2314ca448928","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931069.1334908} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"96942cfeb0e1dc8c3421dc760fc97327","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"96942cfeb0e1dc8c3421dc760fc97327"} gateway-1 | {"time_local":"21/Sep/2024:15:04:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.065","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"96942cfeb0e1dc8c3421dc760fc97327"} device-1 | {"level":"info","message":"POST /devices? 201 59ms","method":"POST","requestID":"96942cfeb0e1dc8c3421dc760fc97327","responseTime":59,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"19343ce133626ed58f002a0a0c198dbc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"19343ce133626ed58f002a0a0c198dbc","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433/websocket 200 1ms","method":"OPTIONS","requestID":"19343ce133626ed58f002a0a0c198dbc","responseTime":1,"status":200,"url":"/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:04:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"19343ce133626ed58f002a0a0c198dbc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo","level":"info","message":"auth send jwt","requestID":"075a27258b3c52253f1b940842157843"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"075a27258b3c52253f1b940842157843","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"075a27258b3c52253f1b940842157843"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":295,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":295,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.140092,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"075a27258b3c52253f1b940842157843","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931071,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"075a27258b3c52253f1b940842157843","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ba318532ca10d2f1cad70c689f833be7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ba318532ca10d2f1cad70c689f833be7","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"075a27258b3c52253f1b940842157843"} device-1 | {"level":"info","message":"POST /devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433/websocket 200 24ms","method":"POST","requestID":"075a27258b3c52253f1b940842157843","responseTime":24,"status":200,"url":"/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:04:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"075a27258b3c52253f1b940842157843"} gateway-1 | {"time_local":"21/Sep/2024:15:04:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a97a19d6-6968-4a66-9654-0393df4b5309/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.005","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ba318532ca10d2f1cad70c689f833be7"} device-1 | {"level":"info","message":"OPTIONS /devices/a97a19d6-6968-4a66-9654-0393df4b5309/websocket 200 1ms","method":"OPTIONS","requestID":"ba318532ca10d2f1cad70c689f833be7","responseTime":1,"status":200,"url":"/devices/a97a19d6-6968-4a66-9654-0393df4b5309/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo","level":"info","message":"auth send jwt","requestID":"f4b4847c53de4d9b3bfdf33aa0882df9"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f4b4847c53de4d9b3bfdf33aa0882df9","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f4b4847c53de4d9b3bfdf33aa0882df9"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":296,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":296,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.305958,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f4b4847c53de4d9b3bfdf33aa0882df9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931071,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f4b4847c53de4d9b3bfdf33aa0882df9","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f4b4847c53de4d9b3bfdf33aa0882df9"} device-1 | {"level":"info","message":"POST /devices/a97a19d6-6968-4a66-9654-0393df4b5309/websocket 200 25ms","method":"POST","requestID":"f4b4847c53de4d9b3bfdf33aa0882df9","responseTime":25,"status":200,"url":"/devices/a97a19d6-6968-4a66-9654-0393df4b5309/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:04:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a97a19d6-6968-4a66-9654-0393df4b5309/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f4b4847c53de4d9b3bfdf33aa0882df9"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c6e773347b11597ab5a588262046a27a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c6e773347b11597ab5a588262046a27a","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.005","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c6e773347b11597ab5a588262046a27a"} device-1 | {"level":"info","message":"OPTIONS /devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433? 200 1ms","method":"OPTIONS","requestID":"c6e773347b11597ab5a588262046a27a","responseTime":1,"status":200,"url":"/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo","level":"info","message":"auth send jwt","requestID":"9998cd0ced586805ccdddbb80e95e0c3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9998cd0ced586805ccdddbb80e95e0c3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"9998cd0ced586805ccdddbb80e95e0c3"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309' connected"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":297,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":297,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.775076,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"9998cd0ced586805ccdddbb80e95e0c3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931071,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9998cd0ced586805ccdddbb80e95e0c3","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdfa391e5-c2a3-44cb-bd7b-dbe039cb6433","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdfa391e5-c2a3-44cb-bd7b-dbe039cb6433","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:29.127124507Z"}]},"request_id":"2e0599c1-f2bc-4952-8f91-8237a249e7c0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.2058609} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"9998cd0ced586805ccdddbb80e95e0c3","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8ed65c7c-90e3-40c3-998c-5c4b5ff2fe66","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.2102938} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"9998cd0ced586805ccdddbb80e95e0c3","responseTime":3,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e91342a263339d64d6e1c7f5183c6d45","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e91342a263339d64d6e1c7f5183c6d45","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a97a19d6-6968-4a66-9654-0393df4b5309? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e91342a263339d64d6e1c7f5183c6d45"} device-1 | {"level":"info","message":"OPTIONS /devices/a97a19d6-6968-4a66-9654-0393df4b5309? 200 1ms","method":"OPTIONS","requestID":"e91342a263339d64d6e1c7f5183c6d45","responseTime":1,"status":200,"url":"/devices/a97a19d6-6968-4a66-9654-0393df4b5309?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo","level":"info","message":"auth send jwt","requestID":"0730bcf8d26293d549f572c661d2854e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0730bcf8d26293d549f572c661d2854e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"0730bcf8d26293d549f572c661d2854e"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":298,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":298,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.82943,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0730bcf8d26293d549f572c661d2854e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931071,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0730bcf8d26293d549f572c661d2854e","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdfa391e5-c2a3-44cb-bd7b-dbe039cb6433","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdfa391e5-c2a3-44cb-bd7b-dbe039cb6433","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:29.127124507Z"}]},"request_id":"745c38c8-b4aa-4c34-b03b-7daed0cd9eae","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.2248495} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9998cd0ced586805ccdddbb80e95e0c3","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"9998cd0ced586805ccdddbb80e95e0c3"} device-1 | {"level":"info","message":"PATCH /devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433? 200 34ms","method":"PATCH","requestID":"9998cd0ced586805ccdddbb80e95e0c3","responseTime":34,"status":200,"url":"/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.039","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9998cd0ced586805ccdddbb80e95e0c3"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97a19d6-6968-4a66-9654-0393df4b5309","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97a19d6-6968-4a66-9654-0393df4b5309","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:28.998867603Z"}]},"request_id":"50dbba89-ca39-498f-aa26-f6c59206ab06","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.233768} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0730bcf8d26293d549f572c661d2854e","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"02f5f1fe-1424-4222-94a2-c1b9e21856f7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.2415707} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"0730bcf8d26293d549f572c661d2854e","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97a19d6-6968-4a66-9654-0393df4b5309","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97a19d6-6968-4a66-9654-0393df4b5309","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:28.998867603Z"}]},"request_id":"78d2f041-d67f-4107-bf84-e351d2f9f6c1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.2518735} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0730bcf8d26293d549f572c661d2854e","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"0730bcf8d26293d549f572c661d2854e"} gateway-1 | {"time_local":"21/Sep/2024:15:04:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a97a19d6-6968-4a66-9654-0393df4b5309? HTTP/1.1","status": "200","body_bytes_sent":"845","request_time":"0.039","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0730bcf8d26293d549f572c661d2854e"} device-1 | {"level":"info","message":"PATCH /devices/a97a19d6-6968-4a66-9654-0393df4b5309? 200 35ms","method":"PATCH","requestID":"0730bcf8d26293d549f572c661d2854e","responseTime":35,"status":200,"url":"/devices/a97a19d6-6968-4a66-9654-0393df4b5309?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo","level":"info","message":"auth send jwt","requestID":"05f98201696e72d226924c79ad3e2068"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"05f98201696e72d226924c79ad3e2068","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"05f98201696e72d226924c79ad3e2068"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":299,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":299,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.026232,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"05f98201696e72d226924c79ad3e2068","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931071,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"05f98201696e72d226924c79ad3e2068","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdfa391e5-c2a3-44cb-bd7b-dbe039cb6433","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdfa391e5-c2a3-44cb-bd7b-dbe039cb6433","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:29.127124507Z"}]},"request_id":"1b716817-ac4b-4367-bc87-86aa9f562e69","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.274074} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"05f98201696e72d226924c79ad3e2068","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"05f98201696e72d226924c79ad3e2068"} gateway-1 | {"time_local":"21/Sep/2024:15:04:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"05f98201696e72d226924c79ad3e2068"} device-1 | {"level":"info","message":"GET /devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433? 200 12ms","method":"GET","requestID":"05f98201696e72d226924c79ad3e2068","responseTime":12,"status":200,"url":"/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo","level":"info","message":"auth send jwt","requestID":"bd40e00ae3374b67031c1aaf8e3c6290"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bd40e00ae3374b67031c1aaf8e3c6290","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"bd40e00ae3374b67031c1aaf8e3c6290"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":300,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":300,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.963113,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bd40e00ae3374b67031c1aaf8e3c6290","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931071,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bd40e00ae3374b67031c1aaf8e3c6290","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8"},"level":"info","message":"Attempting to run experiment","requestID":"bd40e00ae3374b67031c1aaf8e3c6290"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8"},"level":"info","message":"Attempting to book experiment","requestID":"bd40e00ae3374b67031c1aaf8e3c6290"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8"},"level":"info","message":"Successfully booked experiment","requestID":"bd40e00ae3374b67031c1aaf8e3c6290"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce169240-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce16e060-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":301,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":301,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.134564,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":302,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae9e8885-5acf-423a-b2d9-a6c81b4a50c6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ce169240-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ae9e8885-5acf-423a-b2d9-a6c81b4a50c6","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931071,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ce169240-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":302,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.658657,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ce16e060-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931071,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ce16e060-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae9e8885-5acf-423a-b2d9-a6c81b4a50c6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae9e8885-5acf-423a-b2d9-a6c81b4a50c6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:29.057833074Z"}]},"request_id":"beab10dc-2c8b-486f-9406-549e738470d5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.3443131} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ce169240-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdfa391e5-c2a3-44cb-bd7b-dbe039cb6433","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdfa391e5-c2a3-44cb-bd7b-dbe039cb6433","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:29.127124507Z"}]},"request_id":"d353eea7-8bfd-42c3-8bd1-a955b4c312f8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.3458755} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ce16e060-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce16e060-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433? 200 19ms","method":"GET","requestID":"ce16e060-782a-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":303,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":303,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.881484,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ce169240-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931071,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ce169240-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce169240-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/ae9e8885-5acf-423a-b2d9-a6c81b4a50c6? 200 26ms","method":"GET","requestID":"ce169240-782a-11ef-88d4-5fea3f61bb98","responseTime":26,"status":200,"url":"/devices/ae9e8885-5acf-423a-b2d9-a6c81b4a50c6?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8"},"level":"info","message":"Setting up experiment","requestID":"bd40e00ae3374b67031c1aaf8e3c6290"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"bd40e00ae3374b67031c1aaf8e3c6290"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8"},"level":"info","message":"Successfully locked booking for experiment","requestID":"bd40e00ae3374b67031c1aaf8e3c6290"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"bd40e00ae3374b67031c1aaf8e3c6290"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"bd40e00ae3374b67031c1aaf8e3c6290"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8"},"level":"info","message":"Attempting to update booking for experiment","requestID":"bd40e00ae3374b67031c1aaf8e3c6290"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8"},"level":"info","message":"Successfully updated booking for experiment","requestID":"bd40e00ae3374b67031c1aaf8e3c6290"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8"},"level":"info","message":"Successfully set up experiment","requestID":"bd40e00ae3374b67031c1aaf8e3c6290"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce23d8b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce244de0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce249c00-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8"},"level":"info","message":"Successfully running experiment","requestID":"bd40e00ae3374b67031c1aaf8e3c6290"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":304,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":304,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.455735,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":305,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ce23d8b0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931071,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ce23d8b0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":305,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.976449,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"client_addr":"127.0.0.1:53912","level":"info","msg":"Received request.","req_id":306,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ce244de0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931071,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"ce244de0-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:53912","level":"info","msg":"Sent response.","req_id":306,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.255967,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97a19d6-6968-4a66-9654-0393df4b5309","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ff94b859-2af0-48d1-94c7-ceb7548f962b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.4358375} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ce249c00-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"ce249c00-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97a19d6-6968-4a66-9654-0393df4b5309","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97a19d6-6968-4a66-9654-0393df4b5309","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:28.998867603Z"}]},"request_id":"26b140a6-99ca-4f45-bb75-ce6123d76661","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.441666} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce249c00-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a97a19d6-6968-4a66-9654-0393df4b5309/signaling 200 25ms","method":"POST","requestID":"ce249c00-782a-11ef-88d4-5fea3f61bb98","responseTime":25,"status":200,"url":"/devices/a97a19d6-6968-4a66-9654-0393df4b5309/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 12ms","method":"POST","requestID":"ce23d8b0-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdfa391e5-c2a3-44cb-bd7b-dbe039cb6433","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdfa391e5-c2a3-44cb-bd7b-dbe039cb6433","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:29.127124507Z"}]},"request_id":"5301a679-30f0-44bf-8af7-28d0b63206bf","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.4491487} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"ce244de0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce2956f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce23d8b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/a97a19d6-6968-4a66-9654-0393df4b5309? 200 43ms","method":"GET","requestID":"ce23d8b0-782a-11ef-88d4-5fea3f61bb98","responseTime":43,"status":200,"url":"/devices/a97a19d6-6968-4a66-9654-0393df4b5309?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce244de0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd83b81b4-9117-4374-9a89-8d3a935ae0c8#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd83b81b4-9117-4374-9a89-8d3a935ae0c8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"9e7bfae1-01db-4e59-a169-6d383883a046","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.4617941} device-1 | {"level":"info","message":"GET /devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433? 200 42ms","method":"GET","requestID":"ce244de0-782a-11ef-88d4-5fea3f61bb98","responseTime":42,"status":200,"url":"/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aa3e5f5f-04b8-4a13-a45e-82d4fe03e735","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.4624057} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":307,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 33ms","method":"POST","requestID":"bd40e00ae3374b67031c1aaf8e3c6290","responseTime":33,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdfa391e5-c2a3-44cb-bd7b-dbe039cb6433","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"43232739-c152-4e8b-8a79-30aab23056c4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.4672759} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":307,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.019586,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce2b52c0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ce2956f0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"ce2956f0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":308,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce2956f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433/signaling 200 19ms","method":"POST","requestID":"ce2956f0-782a-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97a19d6-6968-4a66-9654-0393df4b5309","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5e7857b0-5693-43c1-b368-3b454368619a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.4759564} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":308,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.375542,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ce2b52c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"ce2b52c0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"bd40e00ae3374b67031c1aaf8e3c6290"} gateway-1 | {"time_local":"21/Sep/2024:15:04:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"808","request_time":"0.198","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bd40e00ae3374b67031c1aaf8e3c6290"} experiment-1 | {"level":"info","message":"POST /experiments? 201 193ms","method":"POST","requestID":"bd40e00ae3374b67031c1aaf8e3c6290","responseTime":193,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce2b52c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a97a19d6-6968-4a66-9654-0393df4b5309/signaling 200 16ms","method":"POST","requestID":"ce2b52c0-782a-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/a97a19d6-6968-4a66-9654-0393df4b5309/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo","level":"info","message":"auth send jwt","requestID":"efb80d7b0d4603e522a9f2d49210b46e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"efb80d7b0d4603e522a9f2d49210b46e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce2e11e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"efb80d7b0d4603e522a9f2d49210b46e"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":309,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":310,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":310,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.875021,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"efb80d7b0d4603e522a9f2d49210b46e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931071,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"efb80d7b0d4603e522a9f2d49210b46e","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdfa391e5-c2a3-44cb-bd7b-dbe039cb6433","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b2e339c9-6aee-4f1e-9d1e-a22fcebd1e06","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.4931264} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":309,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.108651,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ce2e11e0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ce2e11e0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97a19d6-6968-4a66-9654-0393df4b5309","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97a19d6-6968-4a66-9654-0393df4b5309","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:28.998867603Z"}]},"request_id":"ea2a2ec1-f205-4313-b7b3-4447569e2a77","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.4973736} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce2e11e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433/signaling 200 12ms","method":"POST","requestID":"ce2e11e0-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"efb80d7b0d4603e522a9f2d49210b46e","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"bd40e00ae3374b67031c1aaf8e3c6290"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce3034c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"efb80d7b0d4603e522a9f2d49210b46e"} gateway-1 | {"time_local":"21/Sep/2024:15:04:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a97a19d6-6968-4a66-9654-0393df4b5309? HTTP/1.1","status": "200","body_bytes_sent":"845","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"efb80d7b0d4603e522a9f2d49210b46e"} device-1 | {"level":"info","message":"GET /devices/a97a19d6-6968-4a66-9654-0393df4b5309? 200 14ms","method":"GET","requestID":"efb80d7b0d4603e522a9f2d49210b46e","responseTime":14,"status":200,"url":"/devices/a97a19d6-6968-4a66-9654-0393df4b5309?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce3082e0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":311,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":311,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.786046,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":312,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ce3034c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931071,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ce3034c0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo","level":"info","message":"auth send jwt","requestID":"b955146bcba3931c7ad916ca1544d95c"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":312,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.859751,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b955146bcba3931c7ad916ca1544d95c","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ce3082e0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931071,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ce3082e0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b955146bcba3931c7ad916ca1544d95c"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97a19d6-6968-4a66-9654-0393df4b5309","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97a19d6-6968-4a66-9654-0393df4b5309","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:28.998867603Z"}]},"request_id":"bd901aa7-66b3-46fe-ae52-501565e491eb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.5109005} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ce3034c0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdfa391e5-c2a3-44cb-bd7b-dbe039cb6433","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdfa391e5-c2a3-44cb-bd7b-dbe039cb6433","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:29.127124507Z"}]},"request_id":"7c08841a-2550-4d26-951e-fe3c22c5d9a7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.5117404} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce3034c0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ce3082e0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/a97a19d6-6968-4a66-9654-0393df4b5309? 200 14ms","method":"GET","requestID":"ce3034c0-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/a97a19d6-6968-4a66-9654-0393df4b5309?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":313,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":313,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.932814,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b955146bcba3931c7ad916ca1544d95c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931071,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b955146bcba3931c7ad916ca1544d95c","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce3082e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433? 200 16ms","method":"GET","requestID":"ce3082e0-782a-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdfa391e5-c2a3-44cb-bd7b-dbe039cb6433","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdfa391e5-c2a3-44cb-bd7b-dbe039cb6433","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:29.127124507Z"}]},"request_id":"e4476fa3-efb6-4030-8b7d-99b48dbfcffe","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.5184515} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8"},"level":"info","message":"Building connection plan","requestID":"bd40e00ae3374b67031c1aaf8e3c6290"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"dac421cb-fcdd-442d-912e-a37c02e8328e"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"353c0107-d114-48f7-a9db-580c756722b1"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"836673c4-b06c-427b-92cb-d191d96a059f"}]},"level":"info","message":"Built pairwise service configurations","requestID":"bd40e00ae3374b67031c1aaf8e3c6290"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"bd40e00ae3374b67031c1aaf8e3c6290"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b955146bcba3931c7ad916ca1544d95c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"ce336910-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b955146bcba3931c7ad916ca1544d95c"} gateway-1 | {"time_local":"21/Sep/2024:15:04:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b955146bcba3931c7ad916ca1544d95c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":314,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} device-1 | {"level":"info","message":"GET /devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433? 200 14ms","method":"GET","requestID":"b955146bcba3931c7ad916ca1544d95c","responseTime":14,"status":200,"url":"/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":314,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.028835,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ce336910-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931071,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ce336910-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"4de592f6-a4f9-4310-8419-cee726fda556","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.5341601} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5d121966-8c85-436f-be42-d31bce41d9d6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.5344145} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"ce336910-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"ce336910-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"ce336910-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/82ee49c5-278c-47a0-ab41-8a477c59a32a'","requestID":"ce336910-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/82ee49c5-278c-47a0-ab41-8a477c59a32a'","requestID":"ce336910-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"ce336910-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 27ms","method":"POST","requestID":"ce336910-782a-11ef-88d4-5fea3f61bb98","responseTime":27,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"ce336910-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"bd40e00ae3374b67031c1aaf8e3c6290"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce3c1ba0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":315,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97a19d6-6968-4a66-9654-0393df4b5309","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9bf3e8ee-7fe6-4036-a9f7-9512beb413db","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.5834563} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":315,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.870318,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ce3c1ba0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ce3c1ba0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce3c1ba0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a97a19d6-6968-4a66-9654-0393df4b5309/signaling 200 10ms","method":"POST","requestID":"ce3c1ba0-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/a97a19d6-6968-4a66-9654-0393df4b5309/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce3dc950-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":316,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdfa391e5-c2a3-44cb-bd7b-dbe039cb6433","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a940b918-64fe-4296-92e4-47b66acce631","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.594181} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":316,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.703722,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ce3dc950-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ce3dc950-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce3dc950-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433/signaling 200 9ms","method":"POST","requestID":"ce3dc950-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433/signaling"} device-1 | {"device":"dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"a97a19d6-6968-4a66-9654-0393df4b5309","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"a97a19d6-6968-4a66-9654-0393df4b5309","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 399602089841160638 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:NMUM\r\na=ice-pwd:0u/h9Uri3EH4oNoqgF/EfL6M\r\na=ice-options:trickle\r\na=fingerprint:sha-256 8A:8D:70:F6:83:C6:02:0D:2B:3C:8F:CE:26:53:F4:F6:20:25:A8:9C:FF:74:5F:D3:AB:02:64:E0:56:D7:B8:87\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"a97a19d6-6968-4a66-9654-0393df4b5309","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 5718913796934189202 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:aDu5\r\na=ice-pwd:BPtiBRxaFsT1Vu2Yv7wut3ul\r\na=ice-options:trickle\r\na=fingerprint:sha-256 EB:FE:26:D0:23:F2:06:E6:08:F2:A5:BD:BE:BE:74:89:2A:53:F0:E0:2B:80:39:47:7B:C2:C6:3F:B1:06:BD:B8\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1131184660 1 udp 2113937151 4c0d8d8d-dd2e-4159-955e-9224ed6e4d23.local 41055 typ host generation 0 ufrag aDu5 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3342985323 1 udp 1677729535 141.24.211.56 41055 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag aDu5 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433'"} device-1 | {"content":{"candidate":"candidate:3035072490 1 udp 2113937151 4cab3a9e-aabd-46a1-a988-c8f404de38c3.local 36325 typ host generation 0 ufrag NMUM network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a97a19d6-6968-4a66-9654-0393df4b5309","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:667690745 1 udp 1677729535 141.24.211.56 36325 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag NMUM network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a97a19d6-6968-4a66-9654-0393df4b5309","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309'"} device-1 | {"device":"a97a19d6-6968-4a66-9654-0393df4b5309","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/82ee49c5-278c-47a0-ab41-8a477c59a32a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"82ee49c5-278c-47a0-ab41-8a477c59a32a","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a97a19d6-6968-4a66-9654-0393df4b5309","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"efbadf73869fd82763416bc656612e83","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"efbadf73869fd82763416bc656612e83","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/82ee49c5-278c-47a0-ab41-8a477c59a32a"}}},"level":"info","message":"received a callback","requestID":"efbadf73869fd82763416bc656612e83"} device-1 | {"device":"a97a19d6-6968-4a66-9654-0393df4b5309","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"efbadf73869fd82763416bc656612e83","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"efbadf73869fd82763416bc656612e83"} device-1 | {"device":"dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"82ee49c5-278c-47a0-ab41-8a477c59a32a","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"82ee49c5-278c-47a0-ab41-8a477c59a32a","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/82ee49c5-278c-47a0-ab41-8a477c59a32a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"82ee49c5-278c-47a0-ab41-8a477c59a32a","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c6fc769889206242ae048119a2d3e2be","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c6fc769889206242ae048119a2d3e2be","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/82ee49c5-278c-47a0-ab41-8a477c59a32a"}}},"level":"info","message":"received a callback","requestID":"c6fc769889206242ae048119a2d3e2be"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"ce4d0b90-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":317,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F82ee49c5-278c-47a0-ab41-8a477c59a32a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d8ba7101-aee4-470a-80e1-3a80ed2bf923","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.6938262} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":317,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.335555,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/82ee49c5-278c-47a0-ab41-8a477c59a32a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ce4d0b90-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/82ee49c5-278c-47a0-ab41-8a477c59a32a","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ce4d0b90-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"ce4d0b90-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/82ee49c5-278c-47a0-ab41-8a477c59a32a 200 8ms","method":"GET","requestID":"ce4d0b90-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/peerconnections/82ee49c5-278c-47a0-ab41-8a477c59a32a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"c6fc769889206242ae048119a2d3e2be","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.033","http_referrer":"","http_user_agent":"node-fetch","requestID":"c6fc769889206242ae048119a2d3e2be"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce512a40-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":318,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdfa391e5-c2a3-44cb-bd7b-dbe039cb6433","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7e28a5f0-6ff9-4d0d-bb38-235d98f25f94","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.7201393} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":318,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.066715,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ce512a40-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ce512a40-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce512a40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433/signaling 200 8ms","method":"POST","requestID":"ce512a40-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce52ff00-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":319,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97a19d6-6968-4a66-9654-0393df4b5309","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"821824dd-af68-4218-8fa6-f7586410a63a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.7343473} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":319,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.875358,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ce52ff00-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ce52ff00-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce52ff00-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a97a19d6-6968-4a66-9654-0393df4b5309/signaling 200 10ms","method":"POST","requestID":"ce52ff00-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/a97a19d6-6968-4a66-9654-0393df4b5309/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo","level":"info","message":"auth send jwt","requestID":"a34b1298b8cf965588ccc17d156cb349"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a34b1298b8cf965588ccc17d156cb349","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8","requestID":"a34b1298b8cf965588ccc17d156cb349"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":320,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":320,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.682516,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a34b1298b8cf965588ccc17d156cb349","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931071,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a34b1298b8cf965588ccc17d156cb349","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8","requestID":"a34b1298b8cf965588ccc17d156cb349"} experiment-1 | {"level":"info","message":"GET /experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8 200 9ms","method":"GET","requestID":"a34b1298b8cf965588ccc17d156cb349","responseTime":9,"status":200,"url":"/experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8"} gateway-1 | {"time_local":"21/Sep/2024:15:04:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8 HTTP/1.1","status": "200","body_bytes_sent":"881","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a34b1298b8cf965588ccc17d156cb349"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo","level":"info","message":"auth send jwt","requestID":"6ea2c10920867dd610f076e8d8dff370"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6ea2c10920867dd610f076e8d8dff370","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8","requestID":"6ea2c10920867dd610f076e8d8dff370"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":321,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":321,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.928373,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"6ea2c10920867dd610f076e8d8dff370","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931071,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6ea2c10920867dd610f076e8d8dff370","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8"},"level":"info","message":"Attempting to finish experiment","requestID":"6ea2c10920867dd610f076e8d8dff370"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"ce5b3c60-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":322,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":322,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.947246,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/82ee49c5-278c-47a0-ab41-8a477c59a32a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ce5b3c60-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/82ee49c5-278c-47a0-ab41-8a477c59a32a","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931071,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ce5b3c60-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/82ee49c5-278c-47a0-ab41-8a477c59a32a","device":"a97a19d6-6968-4a66-9654-0393df4b5309","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/82ee49c5-278c-47a0-ab41-8a477c59a32a","device":"dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/82ee49c5-278c-47a0-ab41-8a477c59a32a' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/82ee49c5-278c-47a0-ab41-8a477c59a32a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"82ee49c5-278c-47a0-ab41-8a477c59a32a","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"78650c06023932cbddbba5bd9b3e4067","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"78650c06023932cbddbba5bd9b3e4067","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F82ee49c5-278c-47a0-ab41-8a477c59a32a': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F82ee49c5-278c-47a0-ab41-8a477c59a32a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"5ff33258-e0ed-4322-9b18-92ca251fb98f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.8014286} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"74fcc802-46ba-4572-8ca8-79e1756a445b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.8017702} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"156cc7754905e4d83074f66801f25021","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/82ee49c5-278c-47a0-ab41-8a477c59a32a"}}},"level":"info","message":"received a callback","requestID":"78650c06023932cbddbba5bd9b3e4067"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"156cc7754905e4d83074f66801f25021","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"ce5b3c60-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/82ee49c5-278c-47a0-ab41-8a477c59a32a"}}},"level":"info","message":"received a callback","requestID":"156cc7754905e4d83074f66801f25021"} device-1 | {"data":{"peerconnection":"82ee49c5-278c-47a0-ab41-8a477c59a32a","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"ce5b3c60-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/82ee49c5-278c-47a0-ab41-8a477c59a32a 204 36ms","method":"DELETE","requestID":"ce5b3c60-782a-11ef-88d4-5fea3f61bb98","responseTime":36,"status":204,"url":"/peerconnections/82ee49c5-278c-47a0-ab41-8a477c59a32a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8"},"level":"info","message":"Successfully finished experiment","requestID":"6ea2c10920867dd610f076e8d8dff370"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce643d10-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":323,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdfa391e5-c2a3-44cb-bd7b-dbe039cb6433","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"52fc3e88-b88b-4466-8e68-de27b03a443a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.8465033} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":323,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.768087,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ce643d10-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ce643d10-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce643d10-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433/signaling 200 11ms","method":"POST","requestID":"ce643d10-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd83b81b4-9117-4374-9a89-8d3a935ae0c8': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd83b81b4-9117-4374-9a89-8d3a935ae0c8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"d9303a06-4045-4f69-9c4e-80a0e62755ac","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.8542628} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce6638e0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5bbca9f5-7ddb-4888-a24a-7cee9ccc3210","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.8547535} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"6ea2c10920867dd610f076e8d8dff370","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":324,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97a19d6-6968-4a66-9654-0393df4b5309","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b37380b6-40bd-4362-8cff-a6191ef40946","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.8596141} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":324,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.632072,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ce6638e0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ce6638e0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce6638e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a97a19d6-6968-4a66-9654-0393df4b5309/signaling 200 12ms","method":"POST","requestID":"ce6638e0-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/a97a19d6-6968-4a66-9654-0393df4b5309/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8","requestID":"6ea2c10920867dd610f076e8d8dff370"} gateway-1 | {"time_local":"21/Sep/2024:15:04:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.146","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6ea2c10920867dd610f076e8d8dff370"} experiment-1 | {"level":"info","message":"DELETE /experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8 204 145ms","method":"DELETE","requestID":"6ea2c10920867dd610f076e8d8dff370","responseTime":145,"status":204,"url":"/experiments/d83b81b4-9117-4374-9a89-8d3a935ae0c8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 117ms","method":"POST","requestID":"78650c06023932cbddbba5bd9b3e4067","responseTime":117,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.120","http_referrer":"","http_user_agent":"node-fetch","requestID":"78650c06023932cbddbba5bd9b3e4067"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 116ms","method":"POST","requestID":"156cc7754905e4d83074f66801f25021","responseTime":116,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.120","http_referrer":"","http_user_agent":"node-fetch","requestID":"156cc7754905e4d83074f66801f25021"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo","level":"info","message":"auth send jwt","requestID":"5483120b6211a37692a2559e2787e7eb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5483120b6211a37692a2559e2787e7eb","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"5483120b6211a37692a2559e2787e7eb"} gateway-1 | {"time_local":"21/Sep/2024:15:04:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3077","request_time":"0.777","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c9b4cfb15d47821df87324dc588b59a3"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":325,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":325,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.099253,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} gateway-1 | {"time_local":"21/Sep/2024:15:04:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3079","request_time":"0.748","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5f0a2e4338b64784af080629a1874166"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"5483120b6211a37692a2559e2787e7eb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931071,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5483120b6211a37692a2559e2787e7eb","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a97a19d6-6968-4a66-9654-0393df4b5309' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23f741d9-05d6-466e-b527-2489ac5c4bd6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"8e33df4b-7a7a-43fc-a4c0-0630adbfe027","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.9401922} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5483120b6211a37692a2559e2787e7eb","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8c95ece1-002c-469b-8193-3a07d1af3427","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.9446833} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"5483120b6211a37692a2559e2787e7eb","responseTime":3,"status":200,"url":"/relations/update"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/dfa391e5-c2a3-44cb-bd7b-dbe039cb6433' closed"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23f741d9-05d6-466e-b527-2489ac5c4bd6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"f1b7a876-7264-41eb-9402-60b0368dec91","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.955081} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8bf40138-75a7-42fa-acbf-2dd7605b8c80","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.9552205} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"5483120b6211a37692a2559e2787e7eb","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23f741d9-05d6-466e-b527-2489ac5c4bd6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23f741d9-05d6-466e-b527-2489ac5c4bd6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:31.955062632Z"}]},"request_id":"ccbdbe0c-0bd4-4d35-8886-eb35c0713ab0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.9591331} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5483120b6211a37692a2559e2787e7eb","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5483120b6211a37692a2559e2787e7eb"} device-1 | {"level":"info","message":"POST /devices? 201 37ms","method":"POST","requestID":"5483120b6211a37692a2559e2787e7eb","responseTime":37,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.042","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5483120b6211a37692a2559e2787e7eb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo","level":"info","message":"auth send jwt","requestID":"2dbd4ab2d205a7de6cbc5f6836d3244d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2dbd4ab2d205a7de6cbc5f6836d3244d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2dbd4ab2d205a7de6cbc5f6836d3244d"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":326,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":326,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.71781,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"2dbd4ab2d205a7de6cbc5f6836d3244d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931071,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3MX0.Ik9qFxrDh4DEugZ06XLBqg0TFYt1WHIDm7pnpnb43Jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2dbd4ab2d205a7de6cbc5f6836d3244d","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ba54d4c-55ed-4d66-982e-c14cc0debd28","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7a20f827-9fd3-4f84-b1a1-a5f1a70bc4f2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.983196} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2dbd4ab2d205a7de6cbc5f6836d3244d","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4785f46e-2bd1-44f6-8e4b-b736bcfe2555","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931071.9881587} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"2dbd4ab2d205a7de6cbc5f6836d3244d","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ba54d4c-55ed-4d66-982e-c14cc0debd28","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"1d5765f6-21bf-4d2b-8a64-9d80e05add6d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931072.003915} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ea90c25e-71d1-4435-bf41-acb133a5bf06","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931072.004056} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"2dbd4ab2d205a7de6cbc5f6836d3244d","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ba54d4c-55ed-4d66-982e-c14cc0debd28","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ba54d4c-55ed-4d66-982e-c14cc0debd28","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:32.003882593Z"}]},"request_id":"c6ef3963-8642-4350-90d8-9f85c75fcd2d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931072.0078032} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2dbd4ab2d205a7de6cbc5f6836d3244d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2dbd4ab2d205a7de6cbc5f6836d3244d"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"2dbd4ab2d205a7de6cbc5f6836d3244d","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2dbd4ab2d205a7de6cbc5f6836d3244d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3Mn0.dhrzNXrQBvUfcyR8FoEw19H6JQBV7ohBMVvoWz8b8bQ","level":"info","message":"auth send jwt","requestID":"48f1fdf63d59d967e2cae72a0219cfd9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"48f1fdf63d59d967e2cae72a0219cfd9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"48f1fdf63d59d967e2cae72a0219cfd9"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":327,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:32Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":327,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.177533,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"48f1fdf63d59d967e2cae72a0219cfd9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931072,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3Mn0.dhrzNXrQBvUfcyR8FoEw19H6JQBV7ohBMVvoWz8b8bQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"48f1fdf63d59d967e2cae72a0219cfd9","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23f741d9-05d6-466e-b527-2489ac5c4bd6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23f741d9-05d6-466e-b527-2489ac5c4bd6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:31.955062632Z"}]},"request_id":"e2479db6-8686-4227-8752-8a24871a4619","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931072.4945576} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"48f1fdf63d59d967e2cae72a0219cfd9","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4dc0834c-581e-4d60-83f2-9c7850cbcce4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931072.5005574} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"48f1fdf63d59d967e2cae72a0219cfd9","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23f741d9-05d6-466e-b527-2489ac5c4bd6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23f741d9-05d6-466e-b527-2489ac5c4bd6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:31.955062632Z"}]},"request_id":"deca4cb1-6320-499d-a3d3-30765618ea01","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931072.5149834} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"48f1fdf63d59d967e2cae72a0219cfd9","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"48f1fdf63d59d967e2cae72a0219cfd9"} device-1 | {"level":"info","message":"PATCH /devices/23f741d9-05d6-466e-b527-2489ac5c4bd6 200 37ms","method":"PATCH","requestID":"48f1fdf63d59d967e2cae72a0219cfd9","responseTime":37,"status":200,"url":"/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6"} gateway-1 | {"time_local":"21/Sep/2024:15:04:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/23f741d9-05d6-466e-b527-2489ac5c4bd6 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.043","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"48f1fdf63d59d967e2cae72a0219cfd9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3Mn0.dhrzNXrQBvUfcyR8FoEw19H6JQBV7ohBMVvoWz8b8bQ","level":"info","message":"auth send jwt","requestID":"e9cfcebc426e8eef3af20cc89d222e6b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e9cfcebc426e8eef3af20cc89d222e6b","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e9cfcebc426e8eef3af20cc89d222e6b"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":328,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:32Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":328,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.188721,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e9cfcebc426e8eef3af20cc89d222e6b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931072,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3Mn0.dhrzNXrQBvUfcyR8FoEw19H6JQBV7ohBMVvoWz8b8bQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e9cfcebc426e8eef3af20cc89d222e6b","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e9cfcebc426e8eef3af20cc89d222e6b"} device-1 | {"level":"info","message":"POST /devices/23f741d9-05d6-466e-b527-2489ac5c4bd6/websocket 200 21ms","method":"POST","requestID":"e9cfcebc426e8eef3af20cc89d222e6b","responseTime":21,"status":200,"url":"/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:04:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/23f741d9-05d6-466e-b527-2489ac5c4bd6/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e9cfcebc426e8eef3af20cc89d222e6b"} device-1 | {"level":"info","message":"device 'http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"492e742ae1bf6bcac624a6321d299b42","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"492e742ae1bf6bcac624a6321d299b42","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.005","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"492e742ae1bf6bcac624a6321d299b42"} device-1 | {"level":"info","message":"OPTIONS /devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28/websocket 200 1ms","method":"OPTIONS","requestID":"492e742ae1bf6bcac624a6321d299b42","responseTime":1,"status":200,"url":"/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3NH0.wzkIiJumZiLQEnvovHvSk_6AuKx9ZlX6W0azmndi4dA","level":"info","message":"auth send jwt","requestID":"1fb4311668894a71ac2d9112171c774f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1fb4311668894a71ac2d9112171c774f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"1fb4311668894a71ac2d9112171c774f"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":329,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":329,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.640473,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1fb4311668894a71ac2d9112171c774f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931074,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3NH0.wzkIiJumZiLQEnvovHvSk_6AuKx9ZlX6W0azmndi4dA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1fb4311668894a71ac2d9112171c774f","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"1fb4311668894a71ac2d9112171c774f"} device-1 | {"level":"info","message":"POST /devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28/websocket 200 23ms","method":"POST","requestID":"1fb4311668894a71ac2d9112171c774f","responseTime":23,"status":200,"url":"/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:04:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.030","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1fb4311668894a71ac2d9112171c774f"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3995bc730ee6b5f86c94a44681e343bb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3995bc730ee6b5f86c94a44681e343bb","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3995bc730ee6b5f86c94a44681e343bb"} device-1 | {"level":"info","message":"OPTIONS /devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28? 200 1ms","method":"OPTIONS","requestID":"3995bc730ee6b5f86c94a44681e343bb","responseTime":1,"status":200,"url":"/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3NH0.wzkIiJumZiLQEnvovHvSk_6AuKx9ZlX6W0azmndi4dA","level":"info","message":"auth send jwt","requestID":"462193b9a3b1e5bf5a56c8beb6107d08"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"462193b9a3b1e5bf5a56c8beb6107d08","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"462193b9a3b1e5bf5a56c8beb6107d08"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":330,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":330,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.759769,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"462193b9a3b1e5bf5a56c8beb6107d08","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931074,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3NH0.wzkIiJumZiLQEnvovHvSk_6AuKx9ZlX6W0azmndi4dA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"462193b9a3b1e5bf5a56c8beb6107d08","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ba54d4c-55ed-4d66-982e-c14cc0debd28","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ba54d4c-55ed-4d66-982e-c14cc0debd28","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:32.003882593Z"}]},"request_id":"33da68b1-d0f0-4544-80c9-6fc635979de2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931074.1507246} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"462193b9a3b1e5bf5a56c8beb6107d08","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ef14d06f-68be-444b-ad2c-e44c89984629","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931074.1584556} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"462193b9a3b1e5bf5a56c8beb6107d08","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ba54d4c-55ed-4d66-982e-c14cc0debd28","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ba54d4c-55ed-4d66-982e-c14cc0debd28","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:32.003882593Z"}]},"request_id":"a40cd3b0-6619-4f94-ac31-ae6ff1102d5e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931074.1699495} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"462193b9a3b1e5bf5a56c8beb6107d08","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"462193b9a3b1e5bf5a56c8beb6107d08"} gateway-1 | {"time_local":"21/Sep/2024:15:04:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.045","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"462193b9a3b1e5bf5a56c8beb6107d08"} device-1 | {"level":"info","message":"PATCH /devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28? 200 38ms","method":"PATCH","requestID":"462193b9a3b1e5bf5a56c8beb6107d08","responseTime":38,"status":200,"url":"/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3NH0.wzkIiJumZiLQEnvovHvSk_6AuKx9ZlX6W0azmndi4dA","level":"info","message":"auth send jwt","requestID":"abb6ac98348984558794e77b9875040f"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"abb6ac98348984558794e77b9875040f","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"abb6ac98348984558794e77b9875040f"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":331,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":331,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.351388,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"abb6ac98348984558794e77b9875040f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931074,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3NH0.wzkIiJumZiLQEnvovHvSk_6AuKx9ZlX6W0azmndi4dA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"abb6ac98348984558794e77b9875040f","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23f741d9-05d6-466e-b527-2489ac5c4bd6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23f741d9-05d6-466e-b527-2489ac5c4bd6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:31.955062632Z"}]},"request_id":"713f8d4e-dfa6-43d0-8313-68cad459c0b2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931074.2017622} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"abb6ac98348984558794e77b9875040f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"abb6ac98348984558794e77b9875040f"} gateway-1 | {"time_local":"21/Sep/2024:15:04:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/23f741d9-05d6-466e-b527-2489ac5c4bd6? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.033","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"abb6ac98348984558794e77b9875040f"} device-1 | {"level":"info","message":"GET /devices/23f741d9-05d6-466e-b527-2489ac5c4bd6? 200 24ms","method":"GET","requestID":"abb6ac98348984558794e77b9875040f","responseTime":24,"status":200,"url":"/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3NH0.wzkIiJumZiLQEnvovHvSk_6AuKx9ZlX6W0azmndi4dA","level":"info","message":"auth send jwt","requestID":"9f6a755a29c9b329bfde0219bbf21f44"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9f6a755a29c9b329bfde0219bbf21f44","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9f6a755a29c9b329bfde0219bbf21f44"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":332,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":332,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.149777,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"9f6a755a29c9b329bfde0219bbf21f44","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931074,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3NH0.wzkIiJumZiLQEnvovHvSk_6AuKx9ZlX6W0azmndi4dA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9f6a755a29c9b329bfde0219bbf21f44","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ba54d4c-55ed-4d66-982e-c14cc0debd28","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ba54d4c-55ed-4d66-982e-c14cc0debd28","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:32.003882593Z"}]},"request_id":"4dc8ebff-b40d-43d6-8a46-cc4aee64fda3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931074.2334988} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"9f6a755a29c9b329bfde0219bbf21f44","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9f6a755a29c9b329bfde0219bbf21f44"} gateway-1 | {"time_local":"21/Sep/2024:15:04:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9f6a755a29c9b329bfde0219bbf21f44"} device-1 | {"level":"info","message":"GET /devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28? 200 18ms","method":"GET","requestID":"9f6a755a29c9b329bfde0219bbf21f44","responseTime":18,"status":200,"url":"/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3NH0.wzkIiJumZiLQEnvovHvSk_6AuKx9ZlX6W0azmndi4dA","level":"info","message":"auth send jwt","requestID":"961f0ab050176f11254d2c66a0480efa"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"961f0ab050176f11254d2c66a0480efa","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"961f0ab050176f11254d2c66a0480efa"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":333,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":333,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.223649,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"961f0ab050176f11254d2c66a0480efa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931074,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3NH0.wzkIiJumZiLQEnvovHvSk_6AuKx9ZlX6W0azmndi4dA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"961f0ab050176f11254d2c66a0480efa","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fbf4bab5-af87-431e-92dc-98ff99347644"},"level":"info","message":"Attempting to run experiment","requestID":"961f0ab050176f11254d2c66a0480efa"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fbf4bab5-af87-431e-92dc-98ff99347644"},"level":"info","message":"Attempting to book experiment","requestID":"961f0ab050176f11254d2c66a0480efa"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fbf4bab5-af87-431e-92dc-98ff99347644"},"level":"info","message":"Successfully booked experiment","requestID":"961f0ab050176f11254d2c66a0480efa"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cfda8960-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cfdad780-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":334,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":334,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.102824,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":335,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cfda8960-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931074,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3NH0.wzkIiJumZiLQEnvovHvSk_6AuKx9ZlX6W0azmndi4dA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"cfda8960-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":335,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.274155,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cfdad780-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931074,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3NH0.wzkIiJumZiLQEnvovHvSk_6AuKx9ZlX6W0azmndi4dA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cfdad780-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23f741d9-05d6-466e-b527-2489ac5c4bd6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23f741d9-05d6-466e-b527-2489ac5c4bd6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:31.955062632Z"}]},"request_id":"ad1979b3-9dd1-4a29-93b5-ac60dcc87bc3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931074.3064613} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"cfda8960-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ba54d4c-55ed-4d66-982e-c14cc0debd28","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ba54d4c-55ed-4d66-982e-c14cc0debd28","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:32.003882593Z"}]},"request_id":"6a4f5cb1-e4f9-42f2-8e4d-9fa3850f577a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931074.3083389} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cfdad780-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cfda8960-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/23f741d9-05d6-466e-b527-2489ac5c4bd6? 200 22ms","method":"GET","requestID":"cfda8960-782a-11ef-88d4-5fea3f61bb98","responseTime":22,"status":200,"url":"/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cfdad780-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28? 200 21ms","method":"GET","requestID":"cfdad780-782a-11ef-88d4-5fea3f61bb98","responseTime":21,"status":200,"url":"/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fbf4bab5-af87-431e-92dc-98ff99347644"},"level":"info","message":"Setting up experiment","requestID":"961f0ab050176f11254d2c66a0480efa"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fbf4bab5-af87-431e-92dc-98ff99347644"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"961f0ab050176f11254d2c66a0480efa"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fbf4bab5-af87-431e-92dc-98ff99347644"},"level":"info","message":"Successfully locked booking for experiment","requestID":"961f0ab050176f11254d2c66a0480efa"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fbf4bab5-af87-431e-92dc-98ff99347644"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"961f0ab050176f11254d2c66a0480efa"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fbf4bab5-af87-431e-92dc-98ff99347644"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"961f0ab050176f11254d2c66a0480efa"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fbf4bab5-af87-431e-92dc-98ff99347644"},"level":"info","message":"Attempting to update booking for experiment","requestID":"961f0ab050176f11254d2c66a0480efa"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fbf4bab5-af87-431e-92dc-98ff99347644"},"level":"info","message":"Successfully updated booking for experiment","requestID":"961f0ab050176f11254d2c66a0480efa"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fbf4bab5-af87-431e-92dc-98ff99347644"},"level":"info","message":"Successfully set up experiment","requestID":"961f0ab050176f11254d2c66a0480efa"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cfe4e9a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cfe537c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cfe585e0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":336,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":336,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.674124,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":337,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:34Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fbf4bab5-af87-431e-92dc-98ff99347644"},"level":"info","message":"Successfully running experiment","requestID":"961f0ab050176f11254d2c66a0480efa"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cfe4e9a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931074,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3NH0.wzkIiJumZiLQEnvovHvSk_6AuKx9ZlX6W0azmndi4dA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cfe4e9a0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":337,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.866053,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cfe537c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931074,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3NH0.wzkIiJumZiLQEnvovHvSk_6AuKx9ZlX6W0azmndi4dA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cfe537c0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":338,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":338,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.576174,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23f741d9-05d6-466e-b527-2489ac5c4bd6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0ed0c1ad-17a9-4461-a415-bb097b9ec4b4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931074.3714273} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cfe585e0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"cfe585e0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23f741d9-05d6-466e-b527-2489ac5c4bd6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23f741d9-05d6-466e-b527-2489ac5c4bd6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:31.955062632Z"}]},"request_id":"2418f35b-896a-4a5d-89ce-eb967e7788f8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931074.3731697} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ba54d4c-55ed-4d66-982e-c14cc0debd28","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ba54d4c-55ed-4d66-982e-c14cc0debd28","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:32.003882593Z"}]},"request_id":"5a441c30-0be9-46b6-b2a3-1f6e54dae004","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931074.3745813} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"cfe4e9a0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cfe537c0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cfe585e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/23f741d9-05d6-466e-b527-2489ac5c4bd6/signaling 200 19ms","method":"POST","requestID":"cfe585e0-782a-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cfe4e9a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/23f741d9-05d6-466e-b527-2489ac5c4bd6? 200 24ms","method":"GET","requestID":"cfe4e9a0-782a-11ef-88d4-5fea3f61bb98","responseTime":24,"status":200,"url":"/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cfe537c0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffbf4bab5-af87-431e-92dc-98ff99347644#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffbf4bab5-af87-431e-92dc-98ff99347644","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"c1da12ca-84fa-49c0-8261-14d846c834f0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931074.3886838} device-1 | {"level":"info","message":"GET /devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28? 200 24ms","method":"GET","requestID":"cfe537c0-782a-11ef-88d4-5fea3f61bb98","responseTime":24,"status":200,"url":"/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cfe90850-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cca019bc-3fee-462e-bc70-f35612a3cbf7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931074.3892589} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"961f0ab050176f11254d2c66a0480efa","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cfe97d80-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":339,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ba54d4c-55ed-4d66-982e-c14cc0debd28","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b0a57a40-6615-4b8f-b01e-2598b992a94d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931074.3955362} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":339,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.125596,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":340,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cfe90850-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"cfe90850-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23f741d9-05d6-466e-b527-2489ac5c4bd6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"18140626-fde1-4c25-a52a-d44f62d7c869","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931074.399253} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":340,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.857072,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:34Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/fbf4bab5-af87-431e-92dc-98ff99347644","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"961f0ab050176f11254d2c66a0480efa"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cfe97d80-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} gateway-1 | {"time_local":"21/Sep/2024:15:04:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.158","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"961f0ab050176f11254d2c66a0480efa"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"cfe97d80-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /experiments? 201 151ms","method":"POST","requestID":"961f0ab050176f11254d2c66a0480efa","responseTime":151,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cfe90850-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28/signaling 200 14ms","method":"POST","requestID":"cfe90850-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cfe97d80-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/23f741d9-05d6-466e-b527-2489ac5c4bd6/signaling 200 13ms","method":"POST","requestID":"cfe97d80-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3NH0.wzkIiJumZiLQEnvovHvSk_6AuKx9ZlX6W0azmndi4dA","level":"info","message":"auth send jwt","requestID":"c448bbb4f5877e2ddb9b0b96f09b67bb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c448bbb4f5877e2ddb9b0b96f09b67bb","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c448bbb4f5877e2ddb9b0b96f09b67bb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cfebee80-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":341,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":341,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.617617,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c448bbb4f5877e2ddb9b0b96f09b67bb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931074,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3NH0.wzkIiJumZiLQEnvovHvSk_6AuKx9ZlX6W0azmndi4dA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c448bbb4f5877e2ddb9b0b96f09b67bb","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":342,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ba54d4c-55ed-4d66-982e-c14cc0debd28","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"06e63619-0146-4437-89bf-46153440eb7d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931074.4132128} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":342,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.722519,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cfebee80-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"cfebee80-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23f741d9-05d6-466e-b527-2489ac5c4bd6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23f741d9-05d6-466e-b527-2489ac5c4bd6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:31.955062632Z"}]},"request_id":"89a4ef90-3c40-43eb-945c-eec6329ef939","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931074.4155447} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c448bbb4f5877e2ddb9b0b96f09b67bb","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cfebee80-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28/signaling 200 12ms","method":"POST","requestID":"cfebee80-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c448bbb4f5877e2ddb9b0b96f09b67bb"} gateway-1 | {"time_local":"21/Sep/2024:15:04:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/23f741d9-05d6-466e-b527-2489ac5c4bd6? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c448bbb4f5877e2ddb9b0b96f09b67bb"} device-1 | {"level":"info","message":"GET /devices/23f741d9-05d6-466e-b527-2489ac5c4bd6? 200 15ms","method":"GET","requestID":"c448bbb4f5877e2ddb9b0b96f09b67bb","responseTime":15,"status":200,"url":"/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fbf4bab5-af87-431e-92dc-98ff99347644"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"961f0ab050176f11254d2c66a0480efa"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cfee1160-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cfee5f80-782a-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3NH0.wzkIiJumZiLQEnvovHvSk_6AuKx9ZlX6W0azmndi4dA","level":"info","message":"auth send jwt","requestID":"5ee37fdac595c8fa38bcd68bf431d550"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5ee37fdac595c8fa38bcd68bf431d550","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5ee37fdac595c8fa38bcd68bf431d550"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":343,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":343,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.941711,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Received request.","req_id":344,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cfee1160-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931074,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3NH0.wzkIiJumZiLQEnvovHvSk_6AuKx9ZlX6W0azmndi4dA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cfee1160-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45540","level":"info","msg":"Sent response.","req_id":344,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.695536,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cfee5f80-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931074,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3NH0.wzkIiJumZiLQEnvovHvSk_6AuKx9ZlX6W0azmndi4dA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cfee5f80-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":345,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":345,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.91718,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"5ee37fdac595c8fa38bcd68bf431d550","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931074,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3NH0.wzkIiJumZiLQEnvovHvSk_6AuKx9ZlX6W0azmndi4dA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5ee37fdac595c8fa38bcd68bf431d550","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23f741d9-05d6-466e-b527-2489ac5c4bd6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23f741d9-05d6-466e-b527-2489ac5c4bd6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:31.955062632Z"}]},"request_id":"6e18fcc5-6c9f-4ae7-96c6-48738e98d930","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931074.4331036} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ba54d4c-55ed-4d66-982e-c14cc0debd28","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ba54d4c-55ed-4d66-982e-c14cc0debd28","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:32.003882593Z"}]},"request_id":"bd29d63a-2278-4c40-a3f5-1382b8b7496b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931074.4336095} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cfee1160-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cfee5f80-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ba54d4c-55ed-4d66-982e-c14cc0debd28","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ba54d4c-55ed-4d66-982e-c14cc0debd28","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:32.003882593Z"}]},"request_id":"f674a45d-3398-4fab-a89e-af36072db2e6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931074.438315} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5ee37fdac595c8fa38bcd68bf431d550","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cfee1160-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/23f741d9-05d6-466e-b527-2489ac5c4bd6? 200 19ms","method":"GET","requestID":"cfee1160-782a-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cfee5f80-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28? 200 17ms","method":"GET","requestID":"cfee5f80-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5ee37fdac595c8fa38bcd68bf431d550"} gateway-1 | {"time_local":"21/Sep/2024:15:04:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5ee37fdac595c8fa38bcd68bf431d550"} device-1 | {"level":"info","message":"GET /devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28? 200 16ms","method":"GET","requestID":"5ee37fdac595c8fa38bcd68bf431d550","responseTime":16,"status":200,"url":"/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fbf4bab5-af87-431e-92dc-98ff99347644"},"level":"info","message":"Building connection plan","requestID":"961f0ab050176f11254d2c66a0480efa"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"a16107fd-712a-446d-b42d-fbaebeeb5336"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"3ea2ebc8-f3fd-497b-876d-cba2e94e6088"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"f7855002-8ad0-4042-8e3c-a2c2a75e1742"}]},"level":"info","message":"Built pairwise service configurations","requestID":"961f0ab050176f11254d2c66a0480efa"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"961f0ab050176f11254d2c66a0480efa"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"cff193d0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":346,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":346,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.697906,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cff193d0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931074,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3NH0.wzkIiJumZiLQEnvovHvSk_6AuKx9ZlX6W0azmndi4dA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cff193d0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"d4f8ea0f-db87-42e6-907b-1c14299002b9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931074.4560833} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"498da345-4488-4cc8-aeb4-edb0f48cc336","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931074.4562554} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"cff193d0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"cff193d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"cff193d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/e2c465e5-da42-425d-bc4d-32061c0bc1e8'","requestID":"cff193d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/e2c465e5-da42-425d-bc4d-32061c0bc1e8'","requestID":"cff193d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"cff193d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 23ms","method":"POST","requestID":"cff193d0-782a-11ef-88d4-5fea3f61bb98","responseTime":23,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"cff193d0-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fbf4bab5-af87-431e-92dc-98ff99347644"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"961f0ab050176f11254d2c66a0480efa"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cff98310-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":347,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23f741d9-05d6-466e-b527-2489ac5c4bd6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"df1c70a8-272a-4941-a255-ad9d31df567e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931074.5018497} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":347,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.475987,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cff98310-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cff98310-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cff98310-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/23f741d9-05d6-466e-b527-2489ac5c4bd6/signaling 200 9ms","method":"POST","requestID":"cff98310-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cffb30c0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":348,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ba54d4c-55ed-4d66-982e-c14cc0debd28","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c46fb5e8-eca0-4f21-acfd-7be5b3d28ddc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931074.5126772} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":348,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.162647,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cffb30c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cffb30c0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cffb30c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28/signaling 200 8ms","method":"POST","requestID":"cffb30c0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28/signaling"} device-1 | {"device":"4ba54d4c-55ed-4d66-982e-c14cc0debd28","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"4ba54d4c-55ed-4d66-982e-c14cc0debd28","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 8844144470270936921 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:woO7\r\na=ice-pwd:R8lOGauMlhRbtEvX/Go9RJLi\r\na=ice-options:trickle\r\na=fingerprint:sha-256 EC:10:62:6E:C1:76:EC:22:1D:16:DB:66:34:4F:61:8B:F4:3D:D1:C9:E6:1D:B9:E6:08:2D:37:B1:9D:A6:B5:07\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"4ba54d4c-55ed-4d66-982e-c14cc0debd28","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"4ba54d4c-55ed-4d66-982e-c14cc0debd28","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"23f741d9-05d6-466e-b527-2489ac5c4bd6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"e2c465e5-da42-425d-bc4d-32061c0bc1e8","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"23f741d9-05d6-466e-b527-2489ac5c4bd6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"23f741d9-05d6-466e-b527-2489ac5c4bd6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"23f741d9-05d6-466e-b527-2489ac5c4bd6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"23f741d9-05d6-466e-b527-2489ac5c4bd6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/e2c465e5-da42-425d-bc4d-32061c0bc1e8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e2c465e5-da42-425d-bc4d-32061c0bc1e8","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0fef6b612fae1dadaa4d8301636e5515","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0fef6b612fae1dadaa4d8301636e5515","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/e2c465e5-da42-425d-bc4d-32061c0bc1e8"}}},"level":"info","message":"received a callback","requestID":"0fef6b612fae1dadaa4d8301636e5515"} gateway-1 | {"time_local":"21/Sep/2024:15:04:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"0fef6b612fae1dadaa4d8301636e5515"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"0fef6b612fae1dadaa4d8301636e5515","responseTime":9,"status":200,"url":"/callbacks/experiment"} device-1 | {"content":{"candidate":"candidate:1622017681 1 udp 2113937151 57a7f8f6-690c-4520-8022-a71dc57b2c4c.local 39872 typ host generation 0 ufrag woO7 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"4ba54d4c-55ed-4d66-982e-c14cc0debd28","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:4085622658 1 udp 1677729535 141.24.211.56 39872 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag woO7 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"4ba54d4c-55ed-4d66-982e-c14cc0debd28","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1302928496 1 udp 33562623 141.24.210.113 53159 typ relay raddr 141.24.211.56 rport 39872 generation 0 ufrag woO7 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"4ba54d4c-55ed-4d66-982e-c14cc0debd28","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"4ba54d4c-55ed-4d66-982e-c14cc0debd28","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28'"} device-1 | {"data":{"peerconnection":"e2c465e5-da42-425d-bc4d-32061c0bc1e8","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"23f741d9-05d6-466e-b527-2489ac5c4bd6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"4ba54d4c-55ed-4d66-982e-c14cc0debd28","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"23f741d9-05d6-466e-b527-2489ac5c4bd6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"e2c465e5-da42-425d-bc4d-32061c0bc1e8","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/e2c465e5-da42-425d-bc4d-32061c0bc1e8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e2c465e5-da42-425d-bc4d-32061c0bc1e8","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3ac31e4a96ae94dcf885e2c3f5b130cd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3ac31e4a96ae94dcf885e2c3f5b130cd","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/e2c465e5-da42-425d-bc4d-32061c0bc1e8"}}},"level":"info","message":"received a callback","requestID":"3ac31e4a96ae94dcf885e2c3f5b130cd"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"d13b2ad0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":349,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:36Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe2c465e5-da42-425d-bc4d-32061c0bc1e8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cb9be53b-dbb2-4855-87be-7c7ee6a60554","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931076.611745} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":349,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.70625,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e2c465e5-da42-425d-bc4d-32061c0bc1e8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d13b2ad0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/e2c465e5-da42-425d-bc4d-32061c0bc1e8","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d13b2ad0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"d13b2ad0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/e2c465e5-da42-425d-bc4d-32061c0bc1e8 200 13ms","method":"GET","requestID":"d13b2ad0-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/peerconnections/e2c465e5-da42-425d-bc4d-32061c0bc1e8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 45ms","method":"POST","requestID":"3ac31e4a96ae94dcf885e2c3f5b130cd","responseTime":45,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch","requestID":"3ac31e4a96ae94dcf885e2c3f5b130cd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d140f730-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":350,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:36Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23f741d9-05d6-466e-b527-2489ac5c4bd6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4da173f6-a9dd-4c2e-a047-056344650df6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931076.6501105} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":350,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.605365,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d140f730-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"d140f730-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d140f730-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/23f741d9-05d6-466e-b527-2489ac5c4bd6/signaling 200 14ms","method":"POST","requestID":"d140f730-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d1438f40-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":351,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:36Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ba54d4c-55ed-4d66-982e-c14cc0debd28","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7352a1cb-8fed-4dab-8a52-13181d5f880d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931076.6677923} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":351,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.11487,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d1438f40-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"d1438f40-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d1438f40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28/signaling 200 16ms","method":"POST","requestID":"d1438f40-782a-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3Nn0.B6rFFXyGeDLwgxGUQN4GhXpyiSkgB_vS9CdmDxK-4vU","level":"info","message":"auth send jwt","requestID":"7bb6b708a671e2dc1978daea1958770a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7bb6b708a671e2dc1978daea1958770a","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/fbf4bab5-af87-431e-92dc-98ff99347644","requestID":"7bb6b708a671e2dc1978daea1958770a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":352,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:36Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":352,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.321148,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/fbf4bab5-af87-431e-92dc-98ff99347644","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"7bb6b708a671e2dc1978daea1958770a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/fbf4bab5-af87-431e-92dc-98ff99347644","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931076,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3Nn0.B6rFFXyGeDLwgxGUQN4GhXpyiSkgB_vS9CdmDxK-4vU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7bb6b708a671e2dc1978daea1958770a","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/fbf4bab5-af87-431e-92dc-98ff99347644","requestID":"7bb6b708a671e2dc1978daea1958770a"} gateway-1 | {"time_local":"21/Sep/2024:15:04:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/fbf4bab5-af87-431e-92dc-98ff99347644 HTTP/1.1","status": "200","body_bytes_sent":"885","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7bb6b708a671e2dc1978daea1958770a"} experiment-1 | {"level":"info","message":"GET /experiments/fbf4bab5-af87-431e-92dc-98ff99347644 200 17ms","method":"GET","requestID":"7bb6b708a671e2dc1978daea1958770a","responseTime":17,"status":200,"url":"/experiments/fbf4bab5-af87-431e-92dc-98ff99347644"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3Nn0.B6rFFXyGeDLwgxGUQN4GhXpyiSkgB_vS9CdmDxK-4vU","level":"info","message":"auth send jwt","requestID":"0b22f656a62d2a2792cd8608b1fe29ef"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0b22f656a62d2a2792cd8608b1fe29ef","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/fbf4bab5-af87-431e-92dc-98ff99347644","requestID":"0b22f656a62d2a2792cd8608b1fe29ef"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":353,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:36Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":353,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.235247,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:36Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/fbf4bab5-af87-431e-92dc-98ff99347644","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0b22f656a62d2a2792cd8608b1fe29ef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/fbf4bab5-af87-431e-92dc-98ff99347644","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931076,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3Nn0.B6rFFXyGeDLwgxGUQN4GhXpyiSkgB_vS9CdmDxK-4vU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0b22f656a62d2a2792cd8608b1fe29ef","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fbf4bab5-af87-431e-92dc-98ff99347644"},"level":"info","message":"Attempting to finish experiment","requestID":"0b22f656a62d2a2792cd8608b1fe29ef"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"d15d31c0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":354,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:36Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":354,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.246651,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:36Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e2c465e5-da42-425d-bc4d-32061c0bc1e8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d15d31c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/e2c465e5-da42-425d-bc4d-32061c0bc1e8","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931076,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3Nn0.B6rFFXyGeDLwgxGUQN4GhXpyiSkgB_vS9CdmDxK-4vU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d15d31c0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/e2c465e5-da42-425d-bc4d-32061c0bc1e8","device":"4ba54d4c-55ed-4d66-982e-c14cc0debd28","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"23f741d9-05d6-466e-b527-2489ac5c4bd6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"23f741d9-05d6-466e-b527-2489ac5c4bd6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"23f741d9-05d6-466e-b527-2489ac5c4bd6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/e2c465e5-da42-425d-bc4d-32061c0bc1e8' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/e2c465e5-da42-425d-bc4d-32061c0bc1e8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e2c465e5-da42-425d-bc4d-32061c0bc1e8","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe2c465e5-da42-425d-bc4d-32061c0bc1e8': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe2c465e5-da42-425d-bc4d-32061c0bc1e8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"791dcf32-fa33-41de-8bc5-697e7ad47df2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931076.8565056} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dae6ddcf-4c21-4cad-8a44-8307e43e7d23","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931076.8572245} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"d15d31c0-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"acdea70bcbe569ecaac183e8dce47f81","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"acdea70bcbe569ecaac183e8dce47f81","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/e2c465e5-da42-425d-bc4d-32061c0bc1e8"}}},"level":"info","message":"received a callback","requestID":"acdea70bcbe569ecaac183e8dce47f81"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5a18244eaea40fd7345d354190f5e75b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5a18244eaea40fd7345d354190f5e75b","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/e2c465e5-da42-425d-bc4d-32061c0bc1e8"}}},"level":"info","message":"received a callback","requestID":"5a18244eaea40fd7345d354190f5e75b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"d15d31c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/e2c465e5-da42-425d-bc4d-32061c0bc1e8 204 54ms","method":"DELETE","requestID":"d15d31c0-782a-11ef-88d4-5fea3f61bb98","responseTime":54,"status":204,"url":"/peerconnections/e2c465e5-da42-425d-bc4d-32061c0bc1e8"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fbf4bab5-af87-431e-92dc-98ff99347644"},"level":"info","message":"Successfully finished experiment","requestID":"0b22f656a62d2a2792cd8608b1fe29ef"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d168f190-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":355,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:36Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23f741d9-05d6-466e-b527-2489ac5c4bd6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"037f783a-c814-426a-90d6-4844745d86c4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931076.9124355} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":355,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.412176,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d168f190-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d168f190-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d168f190-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/23f741d9-05d6-466e-b527-2489ac5c4bd6/signaling 200 13ms","method":"POST","requestID":"d168f190-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffbf4bab5-af87-431e-92dc-98ff99347644': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffbf4bab5-af87-431e-92dc-98ff99347644","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"cf33e2ca-e0af-4ebf-bc07-3020cec9d6ff","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931076.9190311} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b5d1f614-76b5-4c97-b3ec-d75ec4b97f4a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931076.9192963} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d16b3b80-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"0b22f656a62d2a2792cd8608b1fe29ef","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":356,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:36Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ba54d4c-55ed-4d66-982e-c14cc0debd28","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b2ea69b6-7980-40ab-b2f1-c56c1372af67","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931076.9258928} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":356,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.48971,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d16b3b80-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d16b3b80-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d16b3b80-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28/signaling 200 11ms","method":"POST","requestID":"d16b3b80-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/fbf4bab5-af87-431e-92dc-98ff99347644","requestID":"0b22f656a62d2a2792cd8608b1fe29ef"} gateway-1 | {"time_local":"21/Sep/2024:15:04:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/fbf4bab5-af87-431e-92dc-98ff99347644 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.185","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0b22f656a62d2a2792cd8608b1fe29ef"} gateway-1 | {"time_local":"21/Sep/2024:15:04:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3423","request_time":"4.443","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"03a8a9f6c9cea70e06b0da1de2723356"} experiment-1 | {"level":"info","message":"DELETE /experiments/fbf4bab5-af87-431e-92dc-98ff99347644 204 181ms","method":"DELETE","requestID":"0b22f656a62d2a2792cd8608b1fe29ef","responseTime":181,"status":204,"url":"/experiments/fbf4bab5-af87-431e-92dc-98ff99347644"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 132ms","method":"POST","requestID":"acdea70bcbe569ecaac183e8dce47f81","responseTime":132,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.139","http_referrer":"","http_user_agent":"node-fetch","requestID":"acdea70bcbe569ecaac183e8dce47f81"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"5a18244eaea40fd7345d354190f5e75b","responseTime":130,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.140","http_referrer":"","http_user_agent":"node-fetch","requestID":"5a18244eaea40fd7345d354190f5e75b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3Nn0.B6rFFXyGeDLwgxGUQN4GhXpyiSkgB_vS9CdmDxK-4vU","level":"info","message":"auth send jwt","requestID":"f28083afd44ccf81a86f701b416dd785"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f28083afd44ccf81a86f701b416dd785","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f28083afd44ccf81a86f701b416dd785"} gateway-1 | {"time_local":"21/Sep/2024:15:04:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2886","request_time":"2.916","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a80f21c591eece3c351ab5b35c3c6547"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":357,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:37Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/23f741d9-05d6-466e-b527-2489ac5c4bd6' closed"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":357,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.078013,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f28083afd44ccf81a86f701b416dd785","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931076,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3Nn0.B6rFFXyGeDLwgxGUQN4GhXpyiSkgB_vS9CdmDxK-4vU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f28083afd44ccf81a86f701b416dd785","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/4ba54d4c-55ed-4d66-982e-c14cc0debd28' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f4aaa4f-683e-484d-b95a-96e2744832c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ee39bfb1-8a8f-4ac2-a561-765fead4e967","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931077.0231526} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f28083afd44ccf81a86f701b416dd785","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3f2c5627-334f-47f2-9b1d-fba55ac75270","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931077.02859} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f28083afd44ccf81a86f701b416dd785","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f4aaa4f-683e-484d-b95a-96e2744832c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"306a435d-5f32-43bd-8ef9-7842d611d288","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931077.038462} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8c334326-86ce-4b77-83bb-2d02d8949685","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931077.0387597} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"f28083afd44ccf81a86f701b416dd785","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f4aaa4f-683e-484d-b95a-96e2744832c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f4aaa4f-683e-484d-b95a-96e2744832c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:37.038442314Z"}]},"request_id":"1cc64c7b-91bf-4ad4-a875-454e47094d69","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931077.0430305} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f28083afd44ccf81a86f701b416dd785","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f28083afd44ccf81a86f701b416dd785"} gateway-1 | {"time_local":"21/Sep/2024:15:04:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f28083afd44ccf81a86f701b416dd785"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"f28083afd44ccf81a86f701b416dd785","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3N30.MlVI_xcjViMMHF8aB38AOYcqWlqjJ4bfE9qul_xKgwg","level":"info","message":"auth send jwt","requestID":"329e6e463559fbc03fe9e31ae1075c5a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"329e6e463559fbc03fe9e31ae1075c5a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"329e6e463559fbc03fe9e31ae1075c5a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":358,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:37Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":358,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.743042,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"329e6e463559fbc03fe9e31ae1075c5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931077,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3N30.MlVI_xcjViMMHF8aB38AOYcqWlqjJ4bfE9qul_xKgwg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"329e6e463559fbc03fe9e31ae1075c5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"89c28221-bbd2-42d9-8094-9d77978406dc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931077.0725875} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"329e6e463559fbc03fe9e31ae1075c5a","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b02f0d3e-8b72-45ef-881b-42f2d26e3e3a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931077.0772557} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"329e6e463559fbc03fe9e31ae1075c5a","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"479945c0-1c91-4021-9b19-c06568a555c3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931077.0876644} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"408f4f57-3165-4a79-a4d5-8debc94132a0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931077.087913} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"329e6e463559fbc03fe9e31ae1075c5a","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:37.087645390Z"}]},"request_id":"31703b74-1a44-4c15-b950-27f2c300a0cd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931077.091977} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"329e6e463559fbc03fe9e31ae1075c5a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"329e6e463559fbc03fe9e31ae1075c5a"} gateway-1 | {"time_local":"21/Sep/2024:15:04:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"329e6e463559fbc03fe9e31ae1075c5a"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"329e6e463559fbc03fe9e31ae1075c5a","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"94758f7ba3f85fc6dc30089b9395a360","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"94758f7ba3f85fc6dc30089b9395a360","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"94758f7ba3f85fc6dc30089b9395a360"} device-1 | {"level":"info","message":"OPTIONS /devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270/websocket 200 1ms","method":"OPTIONS","requestID":"94758f7ba3f85fc6dc30089b9395a360","responseTime":1,"status":200,"url":"/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I","level":"info","message":"auth send jwt","requestID":"bd52c41b17c9ff2190bdcebdae54a740"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bd52c41b17c9ff2190bdcebdae54a740","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"bd52c41b17c9ff2190bdcebdae54a740"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":359,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":359,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.703182,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bd52c41b17c9ff2190bdcebdae54a740","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931079,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bd52c41b17c9ff2190bdcebdae54a740","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"bd52c41b17c9ff2190bdcebdae54a740"} gateway-1 | {"time_local":"21/Sep/2024:15:04:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"bd52c41b17c9ff2190bdcebdae54a740"} device-1 | {"level":"info","message":"POST /devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270/websocket 200 22ms","method":"POST","requestID":"bd52c41b17c9ff2190bdcebdae54a740","responseTime":22,"status":200,"url":"/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"da642d7e2d2c7f9abd8b9a234a029877","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"da642d7e2d2c7f9abd8b9a234a029877","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3f4aaa4f-683e-484d-b95a-96e2744832c7/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.002","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"da642d7e2d2c7f9abd8b9a234a029877"} device-1 | {"level":"info","message":"OPTIONS /devices/3f4aaa4f-683e-484d-b95a-96e2744832c7/websocket 200 0ms","method":"OPTIONS","requestID":"da642d7e2d2c7f9abd8b9a234a029877","responseTime":0,"status":200,"url":"/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I","level":"info","message":"auth send jwt","requestID":"c9044ecfb62d9ebec1d1773a52650cb3"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c9044ecfb62d9ebec1d1773a52650cb3","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c9044ecfb62d9ebec1d1773a52650cb3"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":360,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":360,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.217358,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c9044ecfb62d9ebec1d1773a52650cb3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931079,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c9044ecfb62d9ebec1d1773a52650cb3","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c9044ecfb62d9ebec1d1773a52650cb3"} gateway-1 | {"time_local":"21/Sep/2024:15:04:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3f4aaa4f-683e-484d-b95a-96e2744832c7/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c9044ecfb62d9ebec1d1773a52650cb3"} device-1 | {"level":"info","message":"POST /devices/3f4aaa4f-683e-484d-b95a-96e2744832c7/websocket 200 23ms","method":"POST","requestID":"c9044ecfb62d9ebec1d1773a52650cb3","responseTime":23,"status":200,"url":"/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2eef4bfe26c351d7b5a92a2e468c2ff5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2eef4bfe26c351d7b5a92a2e468c2ff5","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.002","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2eef4bfe26c351d7b5a92a2e468c2ff5"} device-1 | {"level":"info","message":"OPTIONS /devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270? 200 0ms","method":"OPTIONS","requestID":"2eef4bfe26c351d7b5a92a2e468c2ff5","responseTime":0,"status":200,"url":"/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I","level":"info","message":"auth send jwt","requestID":"c24f585e5e72911ad3254ec0ee22c76f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c24f585e5e72911ad3254ec0ee22c76f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c24f585e5e72911ad3254ec0ee22c76f"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7' connected"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":361,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":361,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.861779,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c24f585e5e72911ad3254ec0ee22c76f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931079,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c24f585e5e72911ad3254ec0ee22c76f","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:37.087645390Z"}]},"request_id":"be06a7e9-8f0d-4c4d-95c7-80d17a97eeb7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.146353} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c24f585e5e72911ad3254ec0ee22c76f","responseTime":3,"status":200,"url":"/relations/query"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a952f77d3fb945ba54da4e7b9beaf821","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a952f77d3fb945ba54da4e7b9beaf821","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3f4aaa4f-683e-484d-b95a-96e2744832c7? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a952f77d3fb945ba54da4e7b9beaf821"} device-1 | {"level":"info","message":"OPTIONS /devices/3f4aaa4f-683e-484d-b95a-96e2744832c7? 200 1ms","method":"OPTIONS","requestID":"a952f77d3fb945ba54da4e7b9beaf821","responseTime":1,"status":200,"url":"/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d152d124-648e-4b67-9c6c-387a215b9ee0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.1522682} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c24f585e5e72911ad3254ec0ee22c76f","responseTime":5,"status":200,"url":"/relations/update"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I","level":"info","message":"auth send jwt","requestID":"34ff2075c0d8b825c369c9776411edc0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"34ff2075c0d8b825c369c9776411edc0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"34ff2075c0d8b825c369c9776411edc0"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":362,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":362,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.215242,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"34ff2075c0d8b825c369c9776411edc0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931079,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"34ff2075c0d8b825c369c9776411edc0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:37.087645390Z"}]},"request_id":"bb80534d-cda1-4d8c-982a-c88aace5c555","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.172544} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c24f585e5e72911ad3254ec0ee22c76f","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f4aaa4f-683e-484d-b95a-96e2744832c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f4aaa4f-683e-484d-b95a-96e2744832c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:37.038442314Z"}]},"request_id":"c1207837-3e47-42d9-b063-515a70a93a83","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.1747093} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c24f585e5e72911ad3254ec0ee22c76f"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"34ff2075c0d8b825c369c9776411edc0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"PATCH /devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270? 200 45ms","method":"PATCH","requestID":"c24f585e5e72911ad3254ec0ee22c76f","responseTime":45,"status":200,"url":"/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.050","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c24f585e5e72911ad3254ec0ee22c76f"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"852640f4-2d4f-42b6-9374-ab37fed76209","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.1820962} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"34ff2075c0d8b825c369c9776411edc0","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f4aaa4f-683e-484d-b95a-96e2744832c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f4aaa4f-683e-484d-b95a-96e2744832c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:37.038442314Z"}]},"request_id":"989bf46a-ca18-4f40-b30f-22578db88c7c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.1940246} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"34ff2075c0d8b825c369c9776411edc0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"34ff2075c0d8b825c369c9776411edc0"} gateway-1 | {"time_local":"21/Sep/2024:15:04:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3f4aaa4f-683e-484d-b95a-96e2744832c7? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.041","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"34ff2075c0d8b825c369c9776411edc0"} device-1 | {"level":"info","message":"PATCH /devices/3f4aaa4f-683e-484d-b95a-96e2744832c7? 200 37ms","method":"PATCH","requestID":"34ff2075c0d8b825c369c9776411edc0","responseTime":37,"status":200,"url":"/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I","level":"info","message":"auth send jwt","requestID":"59b4353ef699eb0a2b76b02e2b8218d7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"59b4353ef699eb0a2b76b02e2b8218d7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"59b4353ef699eb0a2b76b02e2b8218d7"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":363,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":363,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.676593,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"59b4353ef699eb0a2b76b02e2b8218d7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931079,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"59b4353ef699eb0a2b76b02e2b8218d7","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f4aaa4f-683e-484d-b95a-96e2744832c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f4aaa4f-683e-484d-b95a-96e2744832c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:37.038442314Z"}]},"request_id":"68a91d80-cd93-4576-9403-cf25f9bba1bd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.2169132} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"59b4353ef699eb0a2b76b02e2b8218d7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"59b4353ef699eb0a2b76b02e2b8218d7"} device-1 | {"level":"info","message":"GET /devices/3f4aaa4f-683e-484d-b95a-96e2744832c7? 200 14ms","method":"GET","requestID":"59b4353ef699eb0a2b76b02e2b8218d7","responseTime":14,"status":200,"url":"/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3f4aaa4f-683e-484d-b95a-96e2744832c7? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"59b4353ef699eb0a2b76b02e2b8218d7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I","level":"info","message":"auth send jwt","requestID":"9fe4dcf4dea1cfda2ebff3f5646085e9"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9fe4dcf4dea1cfda2ebff3f5646085e9","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9fe4dcf4dea1cfda2ebff3f5646085e9"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":364,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":364,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.683879,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"9fe4dcf4dea1cfda2ebff3f5646085e9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931079,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9fe4dcf4dea1cfda2ebff3f5646085e9","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:37.087645390Z"}]},"request_id":"bdabcbb5-05b6-4dfb-b200-2c8702a89729","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.2404501} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"9fe4dcf4dea1cfda2ebff3f5646085e9","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9fe4dcf4dea1cfda2ebff3f5646085e9"} gateway-1 | {"time_local":"21/Sep/2024:15:04:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9fe4dcf4dea1cfda2ebff3f5646085e9"} device-1 | {"level":"info","message":"GET /devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270? 200 19ms","method":"GET","requestID":"9fe4dcf4dea1cfda2ebff3f5646085e9","responseTime":19,"status":200,"url":"/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I","level":"info","message":"auth send jwt","requestID":"4968b05ebcd49a1e558b49521ed5ffa9"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4968b05ebcd49a1e558b49521ed5ffa9","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"4968b05ebcd49a1e558b49521ed5ffa9"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":365,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":365,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.381055,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"4968b05ebcd49a1e558b49521ed5ffa9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931079,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4968b05ebcd49a1e558b49521ed5ffa9","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fdfc042-96b2-4985-9992-969810d70dfb"},"level":"info","message":"Attempting to run experiment","requestID":"4968b05ebcd49a1e558b49521ed5ffa9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fdfc042-96b2-4985-9992-969810d70dfb"},"level":"info","message":"Attempting to book experiment","requestID":"4968b05ebcd49a1e558b49521ed5ffa9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fdfc042-96b2-4985-9992-969810d70dfb"},"level":"info","message":"Successfully booked experiment","requestID":"4968b05ebcd49a1e558b49521ed5ffa9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d2d46870-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d2d48f80-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":366,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":366,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.887873,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d2d46870-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931079,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d2d46870-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48756","level":"info","msg":"Received request.","req_id":367,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"client_addr":"127.0.0.1:48756","level":"info","msg":"Sent response.","req_id":367,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.028276,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d2d48f80-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931079,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d2d48f80-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f4aaa4f-683e-484d-b95a-96e2744832c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f4aaa4f-683e-484d-b95a-96e2744832c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:37.038442314Z"}]},"request_id":"94733005-cc4d-46a2-942a-d052af8a47b4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.2966702} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d2d46870-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:37.087645390Z"}]},"request_id":"9790da70-31a1-4a9c-a71d-b5e92d4f3e84","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.301757} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d2d46870-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d2d48f80-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/3f4aaa4f-683e-484d-b95a-96e2744832c7? 200 16ms","method":"GET","requestID":"d2d46870-782a-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d2d48f80-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270? 200 17ms","method":"GET","requestID":"d2d48f80-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fdfc042-96b2-4985-9992-969810d70dfb"},"level":"info","message":"Setting up experiment","requestID":"4968b05ebcd49a1e558b49521ed5ffa9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fdfc042-96b2-4985-9992-969810d70dfb"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"4968b05ebcd49a1e558b49521ed5ffa9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fdfc042-96b2-4985-9992-969810d70dfb"},"level":"info","message":"Successfully locked booking for experiment","requestID":"4968b05ebcd49a1e558b49521ed5ffa9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fdfc042-96b2-4985-9992-969810d70dfb"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"4968b05ebcd49a1e558b49521ed5ffa9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fdfc042-96b2-4985-9992-969810d70dfb"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"4968b05ebcd49a1e558b49521ed5ffa9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fdfc042-96b2-4985-9992-969810d70dfb"},"level":"info","message":"Attempting to update booking for experiment","requestID":"4968b05ebcd49a1e558b49521ed5ffa9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fdfc042-96b2-4985-9992-969810d70dfb"},"level":"info","message":"Successfully updated booking for experiment","requestID":"4968b05ebcd49a1e558b49521ed5ffa9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fdfc042-96b2-4985-9992-969810d70dfb"},"level":"info","message":"Successfully set up experiment","requestID":"4968b05ebcd49a1e558b49521ed5ffa9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d2dc7ec0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d2dccce0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d2dcf3f0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":368,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":368,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.063616,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"client_addr":"127.0.0.1:48756","level":"info","msg":"Received request.","req_id":369,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fdfc042-96b2-4985-9992-969810d70dfb"},"level":"info","message":"Successfully running experiment","requestID":"4968b05ebcd49a1e558b49521ed5ffa9"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d2dc7ec0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931079,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d2dc7ec0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48756","level":"info","msg":"Sent response.","req_id":369,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.731137,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d2dccce0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931079,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d2dccce0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":370,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f4aaa4f-683e-484d-b95a-96e2744832c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f16172ba-16ec-48d5-8eea-095864feeab6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.349497} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:37.087645390Z"}]},"request_id":"defc9448-df98-4ad1-b74b-1a38e4106fd0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.3518558} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":370,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.826264,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d2dcf3f0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d2dcf3f0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d2dccce0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f4aaa4f-683e-484d-b95a-96e2744832c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f4aaa4f-683e-484d-b95a-96e2744832c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:37.038442314Z"}]},"request_id":"b8f5f8f1-83d3-4fee-a3d1-6a9d7b9f74de","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.3526576} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d2dc7ec0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d2dcf3f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/3f4aaa4f-683e-484d-b95a-96e2744832c7/signaling 200 17ms","method":"POST","requestID":"d2dcf3f0-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d2dc7ec0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/3f4aaa4f-683e-484d-b95a-96e2744832c7? 200 21ms","method":"GET","requestID":"d2dc7ec0-782a-11ef-88d4-5fea3f61bb98","responseTime":21,"status":200,"url":"/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d2dccce0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270? 200 20ms","method":"GET","requestID":"d2dccce0-782a-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2fdfc042-96b2-4985-9992-969810d70dfb#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2fdfc042-96b2-4985-9992-969810d70dfb","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"931decdc-0732-4588-813b-0fc29593c344","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.3629296} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d2e00130-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b98a9364-8450-4c40-849d-502e881ed54f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.3631792} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"4968b05ebcd49a1e558b49521ed5ffa9","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d2e07660-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":371,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a2587ceb-4dee-4217-9779-84f5ba075162","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.3689346} authorization-1 | {"client_addr":"127.0.0.1:48756","level":"info","msg":"Received request.","req_id":372,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":371,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.148289,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d2e00130-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d2e00130-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f4aaa4f-683e-484d-b95a-96e2744832c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0212178d-5dea-4b42-a09a-6a86d9c61220","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.3712964} authorization-1 | {"client_addr":"127.0.0.1:48756","level":"info","msg":"Sent response.","req_id":372,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.932345,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d2e07660-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/2fdfc042-96b2-4985-9992-969810d70dfb","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"4968b05ebcd49a1e558b49521ed5ffa9"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d2e07660-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:04:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"778","request_time":"0.126","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4968b05ebcd49a1e558b49521ed5ffa9"} experiment-1 | {"level":"info","message":"POST /experiments? 201 122ms","method":"POST","requestID":"4968b05ebcd49a1e558b49521ed5ffa9","responseTime":122,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d2e00130-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270/signaling 200 11ms","method":"POST","requestID":"d2e00130-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d2e07660-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/3f4aaa4f-683e-484d-b95a-96e2744832c7/signaling 200 10ms","method":"POST","requestID":"d2e07660-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I","level":"info","message":"auth send jwt","requestID":"aa9ee6218b06cbca31dafc8f61f51596"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"aa9ee6218b06cbca31dafc8f61f51596","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d2e24b20-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aa9ee6218b06cbca31dafc8f61f51596"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":373,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"client_addr":"127.0.0.1:48756","level":"info","msg":"Received request.","req_id":374,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"client_addr":"127.0.0.1:48756","level":"info","msg":"Sent response.","req_id":374,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.609469,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"aa9ee6218b06cbca31dafc8f61f51596","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931079,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"aa9ee6218b06cbca31dafc8f61f51596","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"93af59bd-68f1-4bd6-8a7a-944aa8e1c34c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.383393} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":373,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.380954,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d2e24b20-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d2e24b20-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f4aaa4f-683e-484d-b95a-96e2744832c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f4aaa4f-683e-484d-b95a-96e2744832c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:37.038442314Z"}]},"request_id":"df6db09b-9073-4c30-952a-6398c87f0c4b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.387055} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d2e24b20-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"aa9ee6218b06cbca31dafc8f61f51596","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270/signaling 200 8ms","method":"POST","requestID":"d2e24b20-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fdfc042-96b2-4985-9992-969810d70dfb"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"4968b05ebcd49a1e558b49521ed5ffa9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d2e41fe0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d2e446f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aa9ee6218b06cbca31dafc8f61f51596"} gateway-1 | {"time_local":"21/Sep/2024:15:04:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3f4aaa4f-683e-484d-b95a-96e2744832c7? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"aa9ee6218b06cbca31dafc8f61f51596"} device-1 | {"level":"info","message":"GET /devices/3f4aaa4f-683e-484d-b95a-96e2744832c7? 200 13ms","method":"GET","requestID":"aa9ee6218b06cbca31dafc8f61f51596","responseTime":13,"status":200,"url":"/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":375,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":375,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.782728,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"client_addr":"127.0.0.1:48756","level":"info","msg":"Received request.","req_id":376,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d2e41fe0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931079,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d2e41fe0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48756","level":"info","msg":"Sent response.","req_id":376,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.716096,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d2e446f0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931079,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d2e446f0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I","level":"info","message":"auth send jwt","requestID":"5d467216f8ec8e8a5010f41c1143d0a9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5d467216f8ec8e8a5010f41c1143d0a9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5d467216f8ec8e8a5010f41c1143d0a9"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f4aaa4f-683e-484d-b95a-96e2744832c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f4aaa4f-683e-484d-b95a-96e2744832c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:37.038442314Z"}]},"request_id":"f6bcfbb9-e2de-4043-8a85-10042abaffd6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.399382} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d2e41fe0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:37.087645390Z"}]},"request_id":"7834b312-96e4-41aa-8022-21068296e172","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.400842} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"d2e446f0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":377,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":377,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.927991,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"5d467216f8ec8e8a5010f41c1143d0a9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931079,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5d467216f8ec8e8a5010f41c1143d0a9","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d2e41fe0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/3f4aaa4f-683e-484d-b95a-96e2744832c7? 200 16ms","method":"GET","requestID":"d2e41fe0-782a-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d2e446f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270? 200 17ms","method":"GET","requestID":"d2e446f0-782a-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:37.087645390Z"}]},"request_id":"a2cefdfc-ff56-4ea7-b78b-2c1c65e814ed","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.4092505} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fdfc042-96b2-4985-9992-969810d70dfb"},"level":"info","message":"Building connection plan","requestID":"4968b05ebcd49a1e558b49521ed5ffa9"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"f2f06789-f37e-43d7-8ba4-f49ce6a7d9db"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"3e9b901a-cc3a-48bb-9c01-276a4ba48e92"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"fea6bdb6-492c-4466-ba5b-dadf2bd2cc41"}]},"level":"info","message":"Built pairwise service configurations","requestID":"4968b05ebcd49a1e558b49521ed5ffa9"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5d467216f8ec8e8a5010f41c1143d0a9","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"4968b05ebcd49a1e558b49521ed5ffa9"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"d2e77b40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5d467216f8ec8e8a5010f41c1143d0a9"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":378,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} gateway-1 | {"time_local":"21/Sep/2024:15:04:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5d467216f8ec8e8a5010f41c1143d0a9"} device-1 | {"level":"info","message":"GET /devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270? 200 16ms","method":"GET","requestID":"5d467216f8ec8e8a5010f41c1143d0a9","responseTime":16,"status":200,"url":"/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":378,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.800097,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d2e77b40-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931079,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d2e77b40-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"69773433-6595-405d-87ce-e362f0a41372","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.4227962} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bf1f1aa5-b04e-4a0b-84d5-a0ec081ecdd3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.4231114} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"d2e77b40-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"d2e77b40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"d2e77b40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/2f8505f9-3269-42c2-bf7b-66c4826956d5'","requestID":"d2e77b40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/2f8505f9-3269-42c2-bf7b-66c4826956d5'","requestID":"d2e77b40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"d2e77b40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 23ms","method":"POST","requestID":"d2e77b40-782a-11ef-88d4-5fea3f61bb98","responseTime":23,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"d2e77b40-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fdfc042-96b2-4985-9992-969810d70dfb"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"4968b05ebcd49a1e558b49521ed5ffa9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d2ef1c60-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":379,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f4aaa4f-683e-484d-b95a-96e2744832c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"14c9ff91-6f7b-4cda-9e80-d893db065a2d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.46648} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":379,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.216714,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d2ef1c60-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d2ef1c60-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d2ef1c60-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/3f4aaa4f-683e-484d-b95a-96e2744832c7/signaling 200 10ms","method":"POST","requestID":"d2ef1c60-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7/signaling"} device-1 | {"device":"7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"3f4aaa4f-683e-484d-b95a-96e2744832c7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"3f4aaa4f-683e-484d-b95a-96e2744832c7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d2f13f40-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":380,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1ee3a98e-65b3-4066-aa5f-7a6ddf609e62","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.4804726} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":380,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.429195,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d2f13f40-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d2f13f40-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d2f13f40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270/signaling 200 9ms","method":"POST","requestID":"d2f13f40-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 244963477749001946 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:jvCy\r\na=ice-pwd:58iZjM7uzUwoedqKdxuMpWbB\r\na=ice-options:trickle\r\na=fingerprint:sha-256 3E:5F:77:73:09:C4:90:F0:C4:EF:20:5B:A4:69:8F:03:12:8D:56:F4:5C:D9:56:A4:15:F8:D4:D2:F1:6A:27:94\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"3f4aaa4f-683e-484d-b95a-96e2744832c7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 4567641827051453869 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:jyLh\r\na=ice-pwd:WWFkAqlgho27aArEq2jHEX9l\r\na=ice-options:trickle\r\na=fingerprint:sha-256 B1:CD:3D:EC:76:8D:CA:14:5F:15:8D:82:70:DE:3F:D5:BE:5C:8E:20:99:6E:19:45:27:36:CB:26:C8:D6:95:E0\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:882695428 1 udp 2113937151 3029f52a-97b7-4765-9f98-b0d405cf3acc.local 60693 typ host generation 0 ufrag jyLh network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2813819927 1 udp 1677729535 141.24.211.56 60693 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag jyLh network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270'"} device-1 | {"content":{"candidate":"candidate:2468463237 1 udp 2113937151 ab115bd2-ba3f-45ec-85b1-484fccae7b3a.local 36172 typ host generation 0 ufrag jvCy network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3f4aaa4f-683e-484d-b95a-96e2744832c7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:386705658 1 udp 1677729535 141.24.211.56 36172 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag jvCy network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3f4aaa4f-683e-484d-b95a-96e2744832c7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7'"} device-1 | {"device":"3f4aaa4f-683e-484d-b95a-96e2744832c7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2f8505f9-3269-42c2-bf7b-66c4826956d5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2f8505f9-3269-42c2-bf7b-66c4826956d5","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4e38eba60beec515caa01622780e8d73","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4e38eba60beec515caa01622780e8d73","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"3f4aaa4f-683e-484d-b95a-96e2744832c7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"3f4aaa4f-683e-484d-b95a-96e2744832c7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/2f8505f9-3269-42c2-bf7b-66c4826956d5"}}},"level":"info","message":"received a callback","requestID":"4e38eba60beec515caa01622780e8d73"} device-1 | {"device":"7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"4e38eba60beec515caa01622780e8d73","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"4e38eba60beec515caa01622780e8d73"} device-1 | {"data":{"peerconnection":"2f8505f9-3269-42c2-bf7b-66c4826956d5","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"2f8505f9-3269-42c2-bf7b-66c4826956d5","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2f8505f9-3269-42c2-bf7b-66c4826956d5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2f8505f9-3269-42c2-bf7b-66c4826956d5","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"418b8fc122f0e05f038b9f0d1939579a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"418b8fc122f0e05f038b9f0d1939579a","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/2f8505f9-3269-42c2-bf7b-66c4826956d5"}}},"level":"info","message":"received a callback","requestID":"418b8fc122f0e05f038b9f0d1939579a"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"d2fd7440-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":381,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2f8505f9-3269-42c2-bf7b-66c4826956d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c9a8a13c-5efe-4d7e-8c73-d7743feeeadb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.5612063} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":381,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.562618,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2f8505f9-3269-42c2-bf7b-66c4826956d5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d2fd7440-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/2f8505f9-3269-42c2-bf7b-66c4826956d5","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d2fd7440-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"d2fd7440-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/2f8505f9-3269-42c2-bf7b-66c4826956d5 200 9ms","method":"GET","requestID":"d2fd7440-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/peerconnections/2f8505f9-3269-42c2-bf7b-66c4826956d5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 39ms","method":"POST","requestID":"418b8fc122f0e05f038b9f0d1939579a","responseTime":39,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch","requestID":"418b8fc122f0e05f038b9f0d1939579a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d3027d50-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":382,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9473fc92-961e-4a72-a047-8faa6dd88880","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.594228} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":382,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.594177,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d3027d50-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d3027d50-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d3027d50-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270/signaling 200 10ms","method":"POST","requestID":"d3027d50-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d3045210-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":383,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f4aaa4f-683e-484d-b95a-96e2744832c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"833db890-2a05-4815-a448-1c361502cabb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.6067634} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":383,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.61651,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d3045210-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d3045210-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d3045210-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/3f4aaa4f-683e-484d-b95a-96e2744832c7/signaling 200 11ms","method":"POST","requestID":"d3045210-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I","level":"info","message":"auth send jwt","requestID":"2e5fa13e0e20800142d2661e208d61bf"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2e5fa13e0e20800142d2661e208d61bf","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/2fdfc042-96b2-4985-9992-969810d70dfb","requestID":"2e5fa13e0e20800142d2661e208d61bf"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":384,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":384,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.218045,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2fdfc042-96b2-4985-9992-969810d70dfb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"2e5fa13e0e20800142d2661e208d61bf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/2fdfc042-96b2-4985-9992-969810d70dfb","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931079,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2e5fa13e0e20800142d2661e208d61bf","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/2fdfc042-96b2-4985-9992-969810d70dfb","requestID":"2e5fa13e0e20800142d2661e208d61bf"} experiment-1 | {"level":"info","message":"GET /experiments/2fdfc042-96b2-4985-9992-969810d70dfb 200 17ms","method":"GET","requestID":"2e5fa13e0e20800142d2661e208d61bf","responseTime":17,"status":200,"url":"/experiments/2fdfc042-96b2-4985-9992-969810d70dfb"} gateway-1 | {"time_local":"21/Sep/2024:15:04:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/2fdfc042-96b2-4985-9992-969810d70dfb HTTP/1.1","status": "200","body_bytes_sent":"851","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2e5fa13e0e20800142d2661e208d61bf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I","level":"info","message":"auth send jwt","requestID":"4e82571c2ace1ca5c288249a6ed022a7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4e82571c2ace1ca5c288249a6ed022a7","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/2fdfc042-96b2-4985-9992-969810d70dfb","requestID":"4e82571c2ace1ca5c288249a6ed022a7"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":385,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":385,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.105913,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2fdfc042-96b2-4985-9992-969810d70dfb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"4e82571c2ace1ca5c288249a6ed022a7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/2fdfc042-96b2-4985-9992-969810d70dfb","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931079,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4e82571c2ace1ca5c288249a6ed022a7","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fdfc042-96b2-4985-9992-969810d70dfb"},"level":"info","message":"Attempting to finish experiment","requestID":"4e82571c2ace1ca5c288249a6ed022a7"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"d32595b0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":386,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":386,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.3221,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2f8505f9-3269-42c2-bf7b-66c4826956d5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d32595b0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/2f8505f9-3269-42c2-bf7b-66c4826956d5","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931079,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d32595b0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2f8505f9-3269-42c2-bf7b-66c4826956d5","device":"7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2f8505f9-3269-42c2-bf7b-66c4826956d5","device":"3f4aaa4f-683e-484d-b95a-96e2744832c7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2f8505f9-3269-42c2-bf7b-66c4826956d5': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2f8505f9-3269-42c2-bf7b-66c4826956d5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"66ce21ec-30fc-407e-800d-4c7e5a464184","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.8421087} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2f8505f9-3269-42c2-bf7b-66c4826956d5' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/2f8505f9-3269-42c2-bf7b-66c4826956d5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2f8505f9-3269-42c2-bf7b-66c4826956d5","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a16c5e10-8856-4909-9314-a5e78350d5f0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.842349} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"d32595b0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4f5a77ed430cc2f1477a678de02ac11f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4f5a77ed430cc2f1477a678de02ac11f","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"abd1da7be8a9c839a50a55a3cd4486da","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2f8505f9-3269-42c2-bf7b-66c4826956d5"}}},"level":"info","message":"received a callback","requestID":"4f5a77ed430cc2f1477a678de02ac11f"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"abd1da7be8a9c839a50a55a3cd4486da","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"d32595b0-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2f8505f9-3269-42c2-bf7b-66c4826956d5"}}},"level":"info","message":"received a callback","requestID":"abd1da7be8a9c839a50a55a3cd4486da"} device-1 | {"level":"info","message":"DELETE /peerconnections/2f8505f9-3269-42c2-bf7b-66c4826956d5 204 30ms","method":"DELETE","requestID":"d32595b0-782a-11ef-88d4-5fea3f61bb98","responseTime":30,"status":204,"url":"/peerconnections/2f8505f9-3269-42c2-bf7b-66c4826956d5"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fdfc042-96b2-4985-9992-969810d70dfb"},"level":"info","message":"Successfully finished experiment","requestID":"4e82571c2ace1ca5c288249a6ed022a7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d32d36d0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":387,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8b59eb56-8e74-4456-aa2c-770b6c4abfe3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.8758745} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":387,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.335017,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d32d36d0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"d32d36d0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d32d36d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270/signaling 200 12ms","method":"POST","requestID":"d32d36d0-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2fdfc042-96b2-4985-9992-969810d70dfb': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2fdfc042-96b2-4985-9992-969810d70dfb","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"7276ae08-183f-4833-9d9f-62b1f7453223","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.8817756} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d6e644ca-f235-43e7-9da7-b9935c6ebf7d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.881949} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"4e82571c2ace1ca5c288249a6ed022a7","responseTime":15,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d32f59b0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":388,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f4aaa4f-683e-484d-b95a-96e2744832c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"53475a24-3384-4bdc-b72a-9d34f396e720","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.8898606} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":388,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.52596,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d32f59b0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d32f59b0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d32f59b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/3f4aaa4f-683e-484d-b95a-96e2744832c7/signaling 200 13ms","method":"POST","requestID":"d32f59b0-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/2fdfc042-96b2-4985-9992-969810d70dfb","requestID":"4e82571c2ace1ca5c288249a6ed022a7"} gateway-1 | {"time_local":"21/Sep/2024:15:04:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/2fdfc042-96b2-4985-9992-969810d70dfb HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.143","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4e82571c2ace1ca5c288249a6ed022a7"} experiment-1 | {"level":"info","message":"DELETE /experiments/2fdfc042-96b2-4985-9992-969810d70dfb 204 139ms","method":"DELETE","requestID":"4e82571c2ace1ca5c288249a6ed022a7","responseTime":139,"status":204,"url":"/experiments/2fdfc042-96b2-4985-9992-969810d70dfb"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 96ms","method":"POST","requestID":"4f5a77ed430cc2f1477a678de02ac11f","responseTime":96,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.099","http_referrer":"","http_user_agent":"node-fetch","requestID":"4f5a77ed430cc2f1477a678de02ac11f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 96ms","method":"POST","requestID":"abd1da7be8a9c839a50a55a3cd4486da","responseTime":96,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.101","http_referrer":"","http_user_agent":"node-fetch","requestID":"abd1da7be8a9c839a50a55a3cd4486da"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I","level":"info","message":"auth send jwt","requestID":"60a0453dc319380d34ae53c61746ddb4"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"60a0453dc319380d34ae53c61746ddb4","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"60a0453dc319380d34ae53c61746ddb4"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":389,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:39Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":389,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.982391,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:39Z"} gateway-1 | {"time_local":"21/Sep/2024:15:04:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2973","request_time":"0.825","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"7c96f71c1ae00d8637d915b68b97f9b7"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"60a0453dc319380d34ae53c61746ddb4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931079,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA3OX0.qXIOexCtEydnjIp0ooE_97oWPcZ8wicn4J8KpFP-29I"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"60a0453dc319380d34ae53c61746ddb4","responseTime":8,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:04:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2972","request_time":"0.870","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"fcff8a007cc7a63214ad3281f7668815"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/3f4aaa4f-683e-484d-b95a-96e2744832c7' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c88d992-b190-4996-ac95-0ae00c268ad6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"51207ff7-a071-4746-a96f-b4f827b13b13","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.9773238} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"60a0453dc319380d34ae53c61746ddb4","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7a7cc2ee-ad91-48ac-bfa7-78d8f2abf829","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.981892} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"60a0453dc319380d34ae53c61746ddb4","responseTime":3,"status":200,"url":"/relations/update"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/7e9bcdb8-84ac-4ee3-851a-0e3231bf6270' closed"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c88d992-b190-4996-ac95-0ae00c268ad6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"5947a78c-0267-416b-a757-0dd807f12711","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.9929938} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d74245c6-91a0-455b-9087-2d4ae521e01a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.993268} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"60a0453dc319380d34ae53c61746ddb4","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c88d992-b190-4996-ac95-0ae00c268ad6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c88d992-b190-4996-ac95-0ae00c268ad6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:39.992956552Z"}]},"request_id":"1ddd3e2d-1b3c-4db2-b92c-be52cc982fd4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931079.9970999} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"60a0453dc319380d34ae53c61746ddb4","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"60a0453dc319380d34ae53c61746ddb4"} gateway-1 | {"time_local":"21/Sep/2024:15:04:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"60a0453dc319380d34ae53c61746ddb4"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"60a0453dc319380d34ae53c61746ddb4","responseTime":52,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4MH0.kLovuyyEwcqVJGFH0aVw9647NzDoDDTq8kQ59NDf2Bc","level":"info","message":"auth send jwt","requestID":"cad6db2ebb6e72880eaeceb80066c264"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cad6db2ebb6e72880eaeceb80066c264","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"cad6db2ebb6e72880eaeceb80066c264"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":390,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:40Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":390,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.657251,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cad6db2ebb6e72880eaeceb80066c264","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931080,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4MH0.kLovuyyEwcqVJGFH0aVw9647NzDoDDTq8kQ59NDf2Bc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cad6db2ebb6e72880eaeceb80066c264","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafb75d71-7f86-4ef7-aa9b-d3eb3af33afc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3c03dde3-f783-467c-a36d-a925b53fe629","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931080.0197728} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"cad6db2ebb6e72880eaeceb80066c264","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a64f722c-5b97-4d06-b98e-98befa40998f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931080.024047} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"cad6db2ebb6e72880eaeceb80066c264","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafb75d71-7f86-4ef7-aa9b-d3eb3af33afc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"95b938dc-632a-4705-be3e-c8418ab30cc9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931080.0400293} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b166ab3d-d2c1-4adb-87b7-9e013e52c01b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931080.0401928} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"cad6db2ebb6e72880eaeceb80066c264","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafb75d71-7f86-4ef7-aa9b-d3eb3af33afc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafb75d71-7f86-4ef7-aa9b-d3eb3af33afc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:40.040005702Z"}]},"request_id":"809679b1-3ee9-4b23-bbf7-5698a0e529d4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931080.0455816} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cad6db2ebb6e72880eaeceb80066c264","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"cad6db2ebb6e72880eaeceb80066c264"} gateway-1 | {"time_local":"21/Sep/2024:15:04:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cad6db2ebb6e72880eaeceb80066c264"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"cad6db2ebb6e72880eaeceb80066c264","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4MH0.kLovuyyEwcqVJGFH0aVw9647NzDoDDTq8kQ59NDf2Bc","level":"info","message":"auth send jwt","requestID":"e93f5f5b079e7310e5674677e9be5086"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e93f5f5b079e7310e5674677e9be5086","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e93f5f5b079e7310e5674677e9be5086"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":391,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:40Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":391,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.077479,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e93f5f5b079e7310e5674677e9be5086","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931080,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4MH0.kLovuyyEwcqVJGFH0aVw9647NzDoDDTq8kQ59NDf2Bc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e93f5f5b079e7310e5674677e9be5086","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafb75d71-7f86-4ef7-aa9b-d3eb3af33afc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafb75d71-7f86-4ef7-aa9b-d3eb3af33afc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:40.040005702Z"}]},"request_id":"1e50c945-afb2-4017-84fe-cab20e126ec0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931080.5319781} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e93f5f5b079e7310e5674677e9be5086","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fbbe37de-6c12-437a-9984-367a2ab9a4b4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931080.5379283} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e93f5f5b079e7310e5674677e9be5086","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafb75d71-7f86-4ef7-aa9b-d3eb3af33afc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafb75d71-7f86-4ef7-aa9b-d3eb3af33afc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:40.040005702Z"}]},"request_id":"e0a64914-83d6-411c-b332-da92cfcedd32","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931080.549716} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e93f5f5b079e7310e5674677e9be5086","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e93f5f5b079e7310e5674677e9be5086"} gateway-1 | {"time_local":"21/Sep/2024:15:04:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.037","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e93f5f5b079e7310e5674677e9be5086"} device-1 | {"level":"info","message":"PATCH /devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc 200 32ms","method":"PATCH","requestID":"e93f5f5b079e7310e5674677e9be5086","responseTime":32,"status":200,"url":"/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4MH0.kLovuyyEwcqVJGFH0aVw9647NzDoDDTq8kQ59NDf2Bc","level":"info","message":"auth send jwt","requestID":"8d7351c3b86974e45635dea72ccc2ebb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8d7351c3b86974e45635dea72ccc2ebb","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8d7351c3b86974e45635dea72ccc2ebb"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":392,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:40Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":392,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.875346,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"8d7351c3b86974e45635dea72ccc2ebb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931080,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4MH0.kLovuyyEwcqVJGFH0aVw9647NzDoDDTq8kQ59NDf2Bc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8d7351c3b86974e45635dea72ccc2ebb","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8d7351c3b86974e45635dea72ccc2ebb"} device-1 | {"level":"info","message":"POST /devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc/websocket 200 15ms","method":"POST","requestID":"8d7351c3b86974e45635dea72ccc2ebb","responseTime":15,"status":200,"url":"/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:04:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"8d7351c3b86974e45635dea72ccc2ebb"} device-1 | {"level":"info","message":"device 'http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2b5105a91d71891d68eb5e7a6a6ef4d8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"2b5105a91d71891d68eb5e7a6a6ef4d8","responseTime":0,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3c88d992-b190-4996-ac95-0ae00c268ad6/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2b5105a91d71891d68eb5e7a6a6ef4d8"} device-1 | {"level":"info","message":"OPTIONS /devices/3c88d992-b190-4996-ac95-0ae00c268ad6/websocket 200 1ms","method":"OPTIONS","requestID":"2b5105a91d71891d68eb5e7a6a6ef4d8","responseTime":1,"status":200,"url":"/devices/3c88d992-b190-4996-ac95-0ae00c268ad6/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4Mn0.S6lXh5nC11wCCPbhsvuzukoTCWWWralEjuUN6E89qYk","level":"info","message":"auth send jwt","requestID":"87cac32e35560fbe937267c81a607fbf"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"87cac32e35560fbe937267c81a607fbf","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"87cac32e35560fbe937267c81a607fbf"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":393,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":393,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.395915,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"87cac32e35560fbe937267c81a607fbf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931082,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4Mn0.S6lXh5nC11wCCPbhsvuzukoTCWWWralEjuUN6E89qYk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"87cac32e35560fbe937267c81a607fbf","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"87cac32e35560fbe937267c81a607fbf"} gateway-1 | {"time_local":"21/Sep/2024:15:04:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3c88d992-b190-4996-ac95-0ae00c268ad6/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"87cac32e35560fbe937267c81a607fbf"} device-1 | {"level":"info","message":"POST /devices/3c88d992-b190-4996-ac95-0ae00c268ad6/websocket 200 23ms","method":"POST","requestID":"87cac32e35560fbe937267c81a607fbf","responseTime":23,"status":200,"url":"/devices/3c88d992-b190-4996-ac95-0ae00c268ad6/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e7c5a82664a0a6ef433979bced8083b3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e7c5a82664a0a6ef433979bced8083b3","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3c88d992-b190-4996-ac95-0ae00c268ad6? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e7c5a82664a0a6ef433979bced8083b3"} device-1 | {"level":"info","message":"OPTIONS /devices/3c88d992-b190-4996-ac95-0ae00c268ad6? 200 1ms","method":"OPTIONS","requestID":"e7c5a82664a0a6ef433979bced8083b3","responseTime":1,"status":200,"url":"/devices/3c88d992-b190-4996-ac95-0ae00c268ad6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4Mn0.S6lXh5nC11wCCPbhsvuzukoTCWWWralEjuUN6E89qYk","level":"info","message":"auth send jwt","requestID":"0ab2e516f4fb3ce5f757436d91ce54eb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0ab2e516f4fb3ce5f757436d91ce54eb","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"0ab2e516f4fb3ce5f757436d91ce54eb"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":394,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":394,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.20026,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0ab2e516f4fb3ce5f757436d91ce54eb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931082,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4Mn0.S6lXh5nC11wCCPbhsvuzukoTCWWWralEjuUN6E89qYk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0ab2e516f4fb3ce5f757436d91ce54eb","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c88d992-b190-4996-ac95-0ae00c268ad6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c88d992-b190-4996-ac95-0ae00c268ad6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:39.992956552Z"}]},"request_id":"d0bd97b4-b0d2-4aa5-89fe-25852f7d9402","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931082.144843} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0ab2e516f4fb3ce5f757436d91ce54eb","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"02820434-c617-404c-b055-91929154e478","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931082.153072} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"0ab2e516f4fb3ce5f757436d91ce54eb","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c88d992-b190-4996-ac95-0ae00c268ad6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c88d992-b190-4996-ac95-0ae00c268ad6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:39.992956552Z"}]},"request_id":"31714ff0-0d9a-4dba-af9c-bf81ffab7cea","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931082.166332} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0ab2e516f4fb3ce5f757436d91ce54eb","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"0ab2e516f4fb3ce5f757436d91ce54eb"} gateway-1 | {"time_local":"21/Sep/2024:15:04:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3c88d992-b190-4996-ac95-0ae00c268ad6? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.044","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0ab2e516f4fb3ce5f757436d91ce54eb"} device-1 | {"level":"info","message":"PATCH /devices/3c88d992-b190-4996-ac95-0ae00c268ad6? 200 39ms","method":"PATCH","requestID":"0ab2e516f4fb3ce5f757436d91ce54eb","responseTime":39,"status":200,"url":"/devices/3c88d992-b190-4996-ac95-0ae00c268ad6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4Mn0.S6lXh5nC11wCCPbhsvuzukoTCWWWralEjuUN6E89qYk","level":"info","message":"auth send jwt","requestID":"d333e2334fdcda08b63fd4492e48b564"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d333e2334fdcda08b63fd4492e48b564","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d333e2334fdcda08b63fd4492e48b564"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":395,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":395,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.44076,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d333e2334fdcda08b63fd4492e48b564","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931082,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4Mn0.S6lXh5nC11wCCPbhsvuzukoTCWWWralEjuUN6E89qYk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d333e2334fdcda08b63fd4492e48b564","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c88d992-b190-4996-ac95-0ae00c268ad6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c88d992-b190-4996-ac95-0ae00c268ad6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:39.992956552Z"}]},"request_id":"dc418264-db65-46b7-a80c-beaad1d4d958","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931082.1956162} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d333e2334fdcda08b63fd4492e48b564","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d333e2334fdcda08b63fd4492e48b564"} gateway-1 | {"time_local":"21/Sep/2024:15:04:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3c88d992-b190-4996-ac95-0ae00c268ad6? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d333e2334fdcda08b63fd4492e48b564"} device-1 | {"level":"info","message":"GET /devices/3c88d992-b190-4996-ac95-0ae00c268ad6? 200 18ms","method":"GET","requestID":"d333e2334fdcda08b63fd4492e48b564","responseTime":18,"status":200,"url":"/devices/3c88d992-b190-4996-ac95-0ae00c268ad6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4Mn0.S6lXh5nC11wCCPbhsvuzukoTCWWWralEjuUN6E89qYk","level":"info","message":"auth send jwt","requestID":"4c6c937b3a066fd94f65562bfeb2a28a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4c6c937b3a066fd94f65562bfeb2a28a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4c6c937b3a066fd94f65562bfeb2a28a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":396,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":396,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.137356,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"4c6c937b3a066fd94f65562bfeb2a28a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931082,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4Mn0.S6lXh5nC11wCCPbhsvuzukoTCWWWralEjuUN6E89qYk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4c6c937b3a066fd94f65562bfeb2a28a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafb75d71-7f86-4ef7-aa9b-d3eb3af33afc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafb75d71-7f86-4ef7-aa9b-d3eb3af33afc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:40.040005702Z"}]},"request_id":"4e2ed371-92e5-47aa-b66e-b0990f1c2d66","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931082.2192726} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4c6c937b3a066fd94f65562bfeb2a28a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4c6c937b3a066fd94f65562bfeb2a28a"} gateway-1 | {"time_local":"21/Sep/2024:15:04:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4c6c937b3a066fd94f65562bfeb2a28a"} device-1 | {"level":"info","message":"GET /devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc? 200 15ms","method":"GET","requestID":"4c6c937b3a066fd94f65562bfeb2a28a","responseTime":15,"status":200,"url":"/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4Mn0.S6lXh5nC11wCCPbhsvuzukoTCWWWralEjuUN6E89qYk","level":"info","message":"auth send jwt","requestID":"e88baaa54f13dbf9d08e6eb54cb0f52f"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"e88baaa54f13dbf9d08e6eb54cb0f52f","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"e88baaa54f13dbf9d08e6eb54cb0f52f"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":397,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":397,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.168077,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e88baaa54f13dbf9d08e6eb54cb0f52f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931082,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4Mn0.S6lXh5nC11wCCPbhsvuzukoTCWWWralEjuUN6E89qYk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e88baaa54f13dbf9d08e6eb54cb0f52f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9"},"level":"info","message":"Attempting to run experiment","requestID":"e88baaa54f13dbf9d08e6eb54cb0f52f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9"},"level":"info","message":"Attempting to book experiment","requestID":"e88baaa54f13dbf9d08e6eb54cb0f52f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9"},"level":"info","message":"Successfully booked experiment","requestID":"e88baaa54f13dbf9d08e6eb54cb0f52f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d49b93e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d49bbaf0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":398,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"client_addr":"127.0.0.1:48756","level":"info","msg":"Received request.","req_id":399,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":398,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.260996,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d49b93e0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931082,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4Mn0.S6lXh5nC11wCCPbhsvuzukoTCWWWralEjuUN6E89qYk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d49b93e0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48756","level":"info","msg":"Sent response.","req_id":399,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.934308,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d49bbaf0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931082,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4Mn0.S6lXh5nC11wCCPbhsvuzukoTCWWWralEjuUN6E89qYk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d49bbaf0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c88d992-b190-4996-ac95-0ae00c268ad6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c88d992-b190-4996-ac95-0ae00c268ad6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:39.992956552Z"}]},"request_id":"779d41cf-5159-4e69-af13-6e416bd7ec7f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931082.278487} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d49b93e0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafb75d71-7f86-4ef7-aa9b-d3eb3af33afc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafb75d71-7f86-4ef7-aa9b-d3eb3af33afc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:40.040005702Z"}]},"request_id":"e84c69d1-79fd-4fde-942c-412c7772d315","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931082.2797346} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d49bbaf0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d49b93e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/3c88d992-b190-4996-ac95-0ae00c268ad6? 200 14ms","method":"GET","requestID":"d49b93e0-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/3c88d992-b190-4996-ac95-0ae00c268ad6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d49bbaf0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc? 200 14ms","method":"GET","requestID":"d49bbaf0-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9"},"level":"info","message":"Setting up experiment","requestID":"e88baaa54f13dbf9d08e6eb54cb0f52f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"e88baaa54f13dbf9d08e6eb54cb0f52f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9"},"level":"info","message":"Successfully locked booking for experiment","requestID":"e88baaa54f13dbf9d08e6eb54cb0f52f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"e88baaa54f13dbf9d08e6eb54cb0f52f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"e88baaa54f13dbf9d08e6eb54cb0f52f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9"},"level":"info","message":"Attempting to update booking for experiment","requestID":"e88baaa54f13dbf9d08e6eb54cb0f52f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9"},"level":"info","message":"Successfully updated booking for experiment","requestID":"e88baaa54f13dbf9d08e6eb54cb0f52f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9"},"level":"info","message":"Successfully set up experiment","requestID":"e88baaa54f13dbf9d08e6eb54cb0f52f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d4a57ef0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d4a5cd10-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d4a61b30-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":400,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":400,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.802619,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"client_addr":"127.0.0.1:48756","level":"info","msg":"Received request.","req_id":401,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:42Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9"},"level":"info","message":"Successfully running experiment","requestID":"e88baaa54f13dbf9d08e6eb54cb0f52f"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d4a57ef0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931082,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4Mn0.S6lXh5nC11wCCPbhsvuzukoTCWWWralEjuUN6E89qYk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d4a57ef0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48756","level":"info","msg":"Sent response.","req_id":401,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.922119,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d4a5cd10-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931082,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4Mn0.S6lXh5nC11wCCPbhsvuzukoTCWWWralEjuUN6E89qYk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d4a5cd10-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c88d992-b190-4996-ac95-0ae00c268ad6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c88d992-b190-4996-ac95-0ae00c268ad6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:39.992956552Z"}]},"request_id":"658bcea1-c3ed-489e-bfb0-3ef68ae86b3d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931082.349133} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafb75d71-7f86-4ef7-aa9b-d3eb3af33afc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafb75d71-7f86-4ef7-aa9b-d3eb3af33afc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:40.040005702Z"}]},"request_id":"720123c5-e45e-45d0-8e34-2ec5871e05f9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931082.3506885} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d4a57ef0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d4a5cd10-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:45246","level":"info","msg":"Received request.","req_id":402,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c88d992-b190-4996-ac95-0ae00c268ad6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6f03044b-e1ee-4971-bc1a-bb8ba2e7ba33","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931082.3542047} authorization-1 | {"client_addr":"127.0.0.1:45246","level":"info","msg":"Sent response.","req_id":402,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.05325,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d4a61b30-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"d4a61b30-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d4a57ef0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/3c88d992-b190-4996-ac95-0ae00c268ad6? 200 26ms","method":"GET","requestID":"d4a57ef0-782a-11ef-88d4-5fea3f61bb98","responseTime":26,"status":200,"url":"/devices/3c88d992-b190-4996-ac95-0ae00c268ad6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d4a5cd10-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc? 200 25ms","method":"GET","requestID":"d4a5cd10-782a-11ef-88d4-5fea3f61bb98","responseTime":25,"status":200,"url":"/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d4a61b30-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/3c88d992-b190-4996-ac95-0ae00c268ad6/signaling 200 25ms","method":"POST","requestID":"d4a61b30-782a-11ef-88d4-5fea3f61bb98","responseTime":25,"status":200,"url":"/devices/3c88d992-b190-4996-ac95-0ae00c268ad6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d4aa12d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d4aa60f0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fdaba8a1c-7b73-4e77-bb32-2a36bd7817a9#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fdaba8a1c-7b73-4e77-bb32-2a36bd7817a9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"9c12e695-7b20-45e5-a630-6e3c08917ee4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931082.3645468} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"26c3ac56-401b-4ce9-8170-804ce1d02f09","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931082.364856} authorization-1 | {"level":"info","message":"POST /relations/update 200 29ms","method":"POST","requestID":"e88baaa54f13dbf9d08e6eb54cb0f52f","responseTime":29,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":403,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"client_addr":"127.0.0.1:48756","level":"info","msg":"Received request.","req_id":404,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c88d992-b190-4996-ac95-0ae00c268ad6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"18a35176-4bb3-458e-a6df-5eebfc65e9b6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931082.3791745} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":403,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.555695,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:42Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"e88baaa54f13dbf9d08e6eb54cb0f52f"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d4aa12d0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} gateway-1 | {"time_local":"21/Sep/2024:15:04:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"782","request_time":"0.156","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e88baaa54f13dbf9d08e6eb54cb0f52f"} experiment-1 | {"level":"info","message":"POST /experiments? 201 148ms","method":"POST","requestID":"e88baaa54f13dbf9d08e6eb54cb0f52f","responseTime":148,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d4aa12d0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafb75d71-7f86-4ef7-aa9b-d3eb3af33afc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5cb0185a-69cc-4e4b-b691-a1e38a4fde2d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931082.3807693} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d4aa12d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/3c88d992-b190-4996-ac95-0ae00c268ad6/signaling 200 20ms","method":"POST","requestID":"d4aa12d0-782a-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/3c88d992-b190-4996-ac95-0ae00c268ad6/signaling"} authorization-1 | {"client_addr":"127.0.0.1:48756","level":"info","msg":"Sent response.","req_id":404,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.530568,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d4aa60f0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d4ad9540-782a-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4Mn0.S6lXh5nC11wCCPbhsvuzukoTCWWWralEjuUN6E89qYk","level":"info","message":"auth send jwt","requestID":"246dfc36252e2f32861bea6b9d73763e"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"246dfc36252e2f32861bea6b9d73763e","responseTime":6,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"d4aa60f0-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"246dfc36252e2f32861bea6b9d73763e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d4aa60f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc/signaling 200 27ms","method":"POST","requestID":"d4aa60f0-782a-11ef-88d4-5fea3f61bb98","responseTime":27,"status":200,"url":"/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":405,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"client_addr":"127.0.0.1:48756","level":"info","msg":"Received request.","req_id":406,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"client_addr":"127.0.0.1:48756","level":"info","msg":"Sent response.","req_id":406,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.519007,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"246dfc36252e2f32861bea6b9d73763e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931082,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4Mn0.S6lXh5nC11wCCPbhsvuzukoTCWWWralEjuUN6E89qYk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"246dfc36252e2f32861bea6b9d73763e","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafb75d71-7f86-4ef7-aa9b-d3eb3af33afc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d6c02616-4625-4882-8c3e-7da304f0b070","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931082.4015684} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":405,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.214071,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d4ad9540-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d4ad9540-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d4ad9540-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c88d992-b190-4996-ac95-0ae00c268ad6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c88d992-b190-4996-ac95-0ae00c268ad6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:39.992956552Z"}]},"request_id":"20430d4f-843a-417b-b5ec-7c572ac67a9f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931082.4055152} device-1 | {"level":"info","message":"POST /devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc/signaling 200 18ms","method":"POST","requestID":"d4ad9540-782a-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"246dfc36252e2f32861bea6b9d73763e","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"e88baaa54f13dbf9d08e6eb54cb0f52f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d4b0a280-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d4b0c990-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":407,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":407,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.68786,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"client_addr":"127.0.0.1:48756","level":"info","msg":"Received request.","req_id":408,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:42Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"246dfc36252e2f32861bea6b9d73763e"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d4b0a280-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931082,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4Mn0.S6lXh5nC11wCCPbhsvuzukoTCWWWralEjuUN6E89qYk"} gateway-1 | {"time_local":"21/Sep/2024:15:04:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3c88d992-b190-4996-ac95-0ae00c268ad6? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.031","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"246dfc36252e2f32861bea6b9d73763e"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d4b0a280-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/3c88d992-b190-4996-ac95-0ae00c268ad6? 200 23ms","method":"GET","requestID":"246dfc36252e2f32861bea6b9d73763e","responseTime":23,"status":200,"url":"/devices/3c88d992-b190-4996-ac95-0ae00c268ad6?"} authorization-1 | {"client_addr":"127.0.0.1:48756","level":"info","msg":"Sent response.","req_id":408,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.604662,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d4b0c990-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931082,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4Mn0.S6lXh5nC11wCCPbhsvuzukoTCWWWralEjuUN6E89qYk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d4b0c990-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4Mn0.S6lXh5nC11wCCPbhsvuzukoTCWWWralEjuUN6E89qYk","level":"info","message":"auth send jwt","requestID":"01499dd4a802e71b52512325d3006e95"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c88d992-b190-4996-ac95-0ae00c268ad6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c88d992-b190-4996-ac95-0ae00c268ad6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:39.992956552Z"}]},"request_id":"6c52aef6-fada-4d6c-b65b-3a999b45b2e9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931082.4170017} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"01499dd4a802e71b52512325d3006e95","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d4b0a280-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"01499dd4a802e71b52512325d3006e95"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafb75d71-7f86-4ef7-aa9b-d3eb3af33afc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafb75d71-7f86-4ef7-aa9b-d3eb3af33afc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:40.040005702Z"}]},"request_id":"05e09d08-b651-4d0b-8d48-f3cfa088b7ae","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931082.4182007} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d4b0c990-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":409,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":409,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.71497,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"01499dd4a802e71b52512325d3006e95","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931082,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4Mn0.S6lXh5nC11wCCPbhsvuzukoTCWWWralEjuUN6E89qYk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"01499dd4a802e71b52512325d3006e95","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d4b0a280-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/3c88d992-b190-4996-ac95-0ae00c268ad6? 200 16ms","method":"GET","requestID":"d4b0a280-782a-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/3c88d992-b190-4996-ac95-0ae00c268ad6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d4b0c990-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc? 200 16ms","method":"GET","requestID":"d4b0c990-782a-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafb75d71-7f86-4ef7-aa9b-d3eb3af33afc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafb75d71-7f86-4ef7-aa9b-d3eb3af33afc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:40.040005702Z"}]},"request_id":"b7b73ad7-4b89-47aa-a51a-cbee24485328","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931082.425217} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9"},"level":"info","message":"Building connection plan","requestID":"e88baaa54f13dbf9d08e6eb54cb0f52f"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"0816443b-9629-419e-b341-9ab383c60e03"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"995d5395-e8eb-4600-a44e-f059f84b4c70"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"d91244bc-253c-4b8e-806f-f51cfc18c6cd"}]},"level":"info","message":"Built pairwise service configurations","requestID":"e88baaa54f13dbf9d08e6eb54cb0f52f"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"01499dd4a802e71b52512325d3006e95","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"e88baaa54f13dbf9d08e6eb54cb0f52f"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"d4b388b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"01499dd4a802e71b52512325d3006e95"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":410,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:42Z"} gateway-1 | {"time_local":"21/Sep/2024:15:04:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"01499dd4a802e71b52512325d3006e95"} device-1 | {"level":"info","message":"GET /devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc? 200 12ms","method":"GET","requestID":"01499dd4a802e71b52512325d3006e95","responseTime":12,"status":200,"url":"/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":410,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.876769,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d4b388b0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931082,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4Mn0.S6lXh5nC11wCCPbhsvuzukoTCWWWralEjuUN6E89qYk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d4b388b0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"f30db73f-9a77-4551-9560-df2d81057205","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931082.4387507} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"43ba8bf3-86e6-448f-92eb-2b01d9a73e73","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931082.439046} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"d4b388b0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"d4b388b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"d4b388b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/69b6c2de-2030-483f-95d8-9ed215f349fa'","requestID":"d4b388b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/69b6c2de-2030-483f-95d8-9ed215f349fa'","requestID":"d4b388b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"d4b388b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"d4b388b0-782a-11ef-88d4-5fea3f61bb98","responseTime":25,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"d4b388b0-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"e88baaa54f13dbf9d08e6eb54cb0f52f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d4bb77f0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":411,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c88d992-b190-4996-ac95-0ae00c268ad6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ef7fcbcb-3fd7-43b2-9db1-a5713e877ec5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931082.4837124} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":411,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.792194,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d4bb77f0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"device":"3c88d992-b190-4996-ac95-0ae00c268ad6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"3c88d992-b190-4996-ac95-0ae00c268ad6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d4bb77f0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d4bb77f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/3c88d992-b190-4996-ac95-0ae00c268ad6/signaling 200 11ms","method":"POST","requestID":"d4bb77f0-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/3c88d992-b190-4996-ac95-0ae00c268ad6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d4bd73c0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":412,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafb75d71-7f86-4ef7-aa9b-d3eb3af33afc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"89019731-1fbf-4700-af36-b8b1b54fe01e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931082.4961116} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":412,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.208434,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d4bd73c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d4bd73c0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d4bd73c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc/signaling 200 8ms","method":"POST","requestID":"d4bd73c0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc/signaling"} device-1 | {"device":"afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"69b6c2de-2030-483f-95d8-9ed215f349fa","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 7034746480203517607 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=msid-semantic: WMS\r\nm=application 9 DTLS/SCTP 5000\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:pR1d\r\na=ice-pwd:XrR3MR/d5E1sMSwQxNNaAIEd\r\na=ice-options:trickle\r\na=fingerprint:sha-256 72:E6:88:27:C8:4E:2B:CA:DE:23:C1:7E:89:6F:8E:E3:FA:9D:08:94:E2:9D:78:76:EF:08:48:71:B8:56:5D:CA\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"3c88d992-b190-4996-ac95-0ae00c268ad6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:4016227116 1 udp 2113937151 43241705-e1f6-4108-8091-382221153a2d.local 57325 typ host generation 0 ufrag pR1d network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3c88d992-b190-4996-ac95-0ae00c268ad6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2085184063 1 udp 1677729535 141.24.211.56 57325 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag pR1d network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3c88d992-b190-4996-ac95-0ae00c268ad6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"3c88d992-b190-4996-ac95-0ae00c268ad6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6'"} device-1 | {"device":"afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3c88d992-b190-4996-ac95-0ae00c268ad6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/69b6c2de-2030-483f-95d8-9ed215f349fa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"69b6c2de-2030-483f-95d8-9ed215f349fa","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8b837ecf998e5f307c136dbc92f7945f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8b837ecf998e5f307c136dbc92f7945f","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/69b6c2de-2030-483f-95d8-9ed215f349fa"}}},"level":"info","message":"received a callback","requestID":"8b837ecf998e5f307c136dbc92f7945f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"8b837ecf998e5f307c136dbc92f7945f","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"8b837ecf998e5f307c136dbc92f7945f"} device-1 | {"data":{"peerconnection":"69b6c2de-2030-483f-95d8-9ed215f349fa","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3c88d992-b190-4996-ac95-0ae00c268ad6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"69b6c2de-2030-483f-95d8-9ed215f349fa","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"3c88d992-b190-4996-ac95-0ae00c268ad6","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/69b6c2de-2030-483f-95d8-9ed215f349fa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"69b6c2de-2030-483f-95d8-9ed215f349fa","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"da1df70cb8d4147dbcba86bf7fe691c2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"da1df70cb8d4147dbcba86bf7fe691c2","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/69b6c2de-2030-483f-95d8-9ed215f349fa"}}},"level":"info","message":"received a callback","requestID":"da1df70cb8d4147dbcba86bf7fe691c2"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"d6024fd0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":413,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:44Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F69b6c2de-2030-483f-95d8-9ed215f349fa","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"772d2208-50c6-4e8e-9715-fcf8cff9eea4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931084.6282027} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":413,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.511889,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/69b6c2de-2030-483f-95d8-9ed215f349fa","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d6024fd0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/69b6c2de-2030-483f-95d8-9ed215f349fa","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d6024fd0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"d6024fd0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/69b6c2de-2030-483f-95d8-9ed215f349fa 200 13ms","method":"GET","requestID":"d6024fd0-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/peerconnections/69b6c2de-2030-483f-95d8-9ed215f349fa"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 41ms","method":"POST","requestID":"da1df70cb8d4147dbcba86bf7fe691c2","responseTime":41,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch","requestID":"da1df70cb8d4147dbcba86bf7fe691c2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d607a700-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":414,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:44Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c88d992-b190-4996-ac95-0ae00c268ad6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"14901f84-901d-4620-a0eb-5507236eea22","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931084.6610594} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":414,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.499924,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d607a700-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d607a700-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d607a700-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/3c88d992-b190-4996-ac95-0ae00c268ad6/signaling 200 9ms","method":"POST","requestID":"d607a700-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/3c88d992-b190-4996-ac95-0ae00c268ad6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d60954b0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":415,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:44Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafb75d71-7f86-4ef7-aa9b-d3eb3af33afc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ab226e83-a892-40bb-bf62-b0be764ef94a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931084.6723824} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":415,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.46461,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d60954b0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d60954b0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d60954b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc/signaling 200 9ms","method":"POST","requestID":"d60954b0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4NH0.pTwVdwPpjI4snOVxCHuvACuKm_mjen_e90Bc8V0zYD0","level":"info","message":"auth send jwt","requestID":"d040439f4718f70b1e998facb0217fc4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d040439f4718f70b1e998facb0217fc4","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9","requestID":"d040439f4718f70b1e998facb0217fc4"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":416,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":416,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.204417,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d040439f4718f70b1e998facb0217fc4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931084,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4NH0.pTwVdwPpjI4snOVxCHuvACuKm_mjen_e90Bc8V0zYD0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d040439f4718f70b1e998facb0217fc4","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9","requestID":"d040439f4718f70b1e998facb0217fc4"} experiment-1 | {"level":"info","message":"GET /experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9 200 16ms","method":"GET","requestID":"d040439f4718f70b1e998facb0217fc4","responseTime":16,"status":200,"url":"/experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9"} gateway-1 | {"time_local":"21/Sep/2024:15:04:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9 HTTP/1.1","status": "200","body_bytes_sent":"855","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d040439f4718f70b1e998facb0217fc4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4NH0.pTwVdwPpjI4snOVxCHuvACuKm_mjen_e90Bc8V0zYD0","level":"info","message":"auth send jwt","requestID":"0150c4608dfc8486d049008e7ed3e97a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0150c4608dfc8486d049008e7ed3e97a","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9","requestID":"0150c4608dfc8486d049008e7ed3e97a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":417,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":417,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.279811,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:44Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0150c4608dfc8486d049008e7ed3e97a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931084,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4NH0.pTwVdwPpjI4snOVxCHuvACuKm_mjen_e90Bc8V0zYD0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0150c4608dfc8486d049008e7ed3e97a","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9"},"level":"info","message":"Attempting to finish experiment","requestID":"0150c4608dfc8486d049008e7ed3e97a"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"d632fcc0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":418,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":418,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.393101,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:44Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/69b6c2de-2030-483f-95d8-9ed215f349fa","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d632fcc0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/69b6c2de-2030-483f-95d8-9ed215f349fa","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931084,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4NH0.pTwVdwPpjI4snOVxCHuvACuKm_mjen_e90Bc8V0zYD0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d632fcc0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/69b6c2de-2030-483f-95d8-9ed215f349fa","device":"3c88d992-b190-4996-ac95-0ae00c268ad6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/69b6c2de-2030-483f-95d8-9ed215f349fa' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/69b6c2de-2030-483f-95d8-9ed215f349fa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"69b6c2de-2030-483f-95d8-9ed215f349fa","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F69b6c2de-2030-483f-95d8-9ed215f349fa': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F69b6c2de-2030-483f-95d8-9ed215f349fa","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"ca9a894d-02c1-47c2-8156-416e6f833051","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931084.9652553} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"12789446-f2fa-4fd9-b974-d592908f0d2c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931084.9655995} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"d632fcc0-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"52841c4e60798ce3b6c536969dc90ebf","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"52841c4e60798ce3b6c536969dc90ebf","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"571808c66d571756702a7a9484d2b8bf","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/69b6c2de-2030-483f-95d8-9ed215f349fa"}}},"level":"info","message":"received a callback","requestID":"52841c4e60798ce3b6c536969dc90ebf"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"571808c66d571756702a7a9484d2b8bf","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"d632fcc0-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/69b6c2de-2030-483f-95d8-9ed215f349fa"}}},"level":"info","message":"received a callback","requestID":"571808c66d571756702a7a9484d2b8bf"} device-1 | {"level":"info","message":"DELETE /peerconnections/69b6c2de-2030-483f-95d8-9ed215f349fa 204 31ms","method":"DELETE","requestID":"d632fcc0-782a-11ef-88d4-5fea3f61bb98","responseTime":31,"status":204,"url":"/peerconnections/69b6c2de-2030-483f-95d8-9ed215f349fa"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9"},"level":"info","message":"Successfully finished experiment","requestID":"0150c4608dfc8486d049008e7ed3e97a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d63ac4f0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":419,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:44Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c88d992-b190-4996-ac95-0ae00c268ad6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a4ef0766-9999-4136-b107-2c7eeaca700e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931084.9954948} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":419,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.270688,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d63ac4f0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d63ac4f0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d63ac4f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/3c88d992-b190-4996-ac95-0ae00c268ad6/signaling 200 9ms","method":"POST","requestID":"d63ac4f0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/3c88d992-b190-4996-ac95-0ae00c268ad6/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fdaba8a1c-7b73-4e77-bb32-2a36bd7817a9': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fdaba8a1c-7b73-4e77-bb32-2a36bd7817a9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"593e0a6e-37e4-485b-bf63-604c741620d4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931085.0025947} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d63c99b0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b2b3832c-2b91-449c-a14f-136e054542e9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931085.0029087} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"0150c4608dfc8486d049008e7ed3e97a","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":420,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:45Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafb75d71-7f86-4ef7-aa9b-d3eb3af33afc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f4359010-d593-4d4d-8e63-ac6cf703df1e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931085.0085943} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":420,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.711731,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d63c99b0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d63c99b0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d63c99b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc/signaling 200 10ms","method":"POST","requestID":"d63c99b0-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9","requestID":"0150c4608dfc8486d049008e7ed3e97a"} gateway-1 | {"time_local":"21/Sep/2024:15:04:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.145","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0150c4608dfc8486d049008e7ed3e97a"} experiment-1 | {"level":"info","message":"DELETE /experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9 204 140ms","method":"DELETE","requestID":"0150c4608dfc8486d049008e7ed3e97a","responseTime":140,"status":204,"url":"/experiments/daba8a1c-7b73-4e77-bb32-2a36bd7817a9"} gateway-1 | {"time_local":"21/Sep/2024:15:04:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2925","request_time":"4.488","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"7d5bd8c4d6f804882e6094362027a603"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 97ms","method":"POST","requestID":"52841c4e60798ce3b6c536969dc90ebf","responseTime":97,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.100","http_referrer":"","http_user_agent":"node-fetch","requestID":"52841c4e60798ce3b6c536969dc90ebf"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 96ms","method":"POST","requestID":"571808c66d571756702a7a9484d2b8bf","responseTime":96,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.100","http_referrer":"","http_user_agent":"node-fetch","requestID":"571808c66d571756702a7a9484d2b8bf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4NX0.2r2PvCaGNkspbE5ptpJmRpczDKx9DEB9xQem6zVNksM","level":"info","message":"auth send jwt","requestID":"0fb2b0b4e94b3941d11c5b8623e08ae5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0fb2b0b4e94b3941d11c5b8623e08ae5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0fb2b0b4e94b3941d11c5b8623e08ae5"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":421,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:45Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":421,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.816571,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:45Z"} gateway-1 | {"time_local":"21/Sep/2024:15:04:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2462","request_time":"2.987","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"fef8035a322bd2fa5ef4d3c3b2f5dded"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0fb2b0b4e94b3941d11c5b8623e08ae5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931085,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4NX0.2r2PvCaGNkspbE5ptpJmRpczDKx9DEB9xQem6zVNksM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0fb2b0b4e94b3941d11c5b8623e08ae5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/afb75d71-7f86-4ef7-aa9b-d3eb3af33afc' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b5d8ad4-36b4-411c-831b-9620ffe7160e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6c425647-dc84-476c-939b-701dc22ebdfb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931085.0925705} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0fb2b0b4e94b3941d11c5b8623e08ae5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/3c88d992-b190-4996-ac95-0ae00c268ad6' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1776e14a-814c-4c1c-bbe0-a6aa30bbf786","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931085.0974815} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"0fb2b0b4e94b3941d11c5b8623e08ae5","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b5d8ad4-36b4-411c-831b-9620ffe7160e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"6278aa97-a4bb-47b8-b408-dc23cf53e6a0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931085.1070597} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"48cf4d05-ae3f-4105-8521-d4611a6ebe0e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931085.107303} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"0fb2b0b4e94b3941d11c5b8623e08ae5","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b5d8ad4-36b4-411c-831b-9620ffe7160e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b5d8ad4-36b4-411c-831b-9620ffe7160e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:45.107033367Z"}]},"request_id":"d97fd962-95b8-456a-b145-1c1749626661","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931085.1116905} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0fb2b0b4e94b3941d11c5b8623e08ae5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0fb2b0b4e94b3941d11c5b8623e08ae5"} gateway-1 | {"time_local":"21/Sep/2024:15:04:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0fb2b0b4e94b3941d11c5b8623e08ae5"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"0fb2b0b4e94b3941d11c5b8623e08ae5","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4NX0.2r2PvCaGNkspbE5ptpJmRpczDKx9DEB9xQem6zVNksM","level":"info","message":"auth send jwt","requestID":"552652c87c646ce886d956746d92ef93"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"552652c87c646ce886d956746d92ef93","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"552652c87c646ce886d956746d92ef93"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":422,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:45Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":422,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.686415,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"552652c87c646ce886d956746d92ef93","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931085,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4NX0.2r2PvCaGNkspbE5ptpJmRpczDKx9DEB9xQem6zVNksM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"552652c87c646ce886d956746d92ef93","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0e1a86e-ca08-4c27-a492-4e1eed6c689d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1a520afa-0215-4766-8b19-37497fb957f2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931085.1351032} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"552652c87c646ce886d956746d92ef93","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"475ae48d-bbbc-4c28-9908-817b3155634e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931085.1398282} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"552652c87c646ce886d956746d92ef93","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0e1a86e-ca08-4c27-a492-4e1eed6c689d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"edc3cbec-4e25-4b2c-a6d9-2f07e7a7faab","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931085.155078} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"52f28fbb-d81a-4c6a-840a-05433842e87a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931085.1553304} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"552652c87c646ce886d956746d92ef93","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0e1a86e-ca08-4c27-a492-4e1eed6c689d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0e1a86e-ca08-4c27-a492-4e1eed6c689d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:45.155047388Z"}]},"request_id":"228586f9-8976-494a-973b-24da31d6262f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931085.1593502} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"552652c87c646ce886d956746d92ef93","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"552652c87c646ce886d956746d92ef93"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"552652c87c646ce886d956746d92ef93","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"552652c87c646ce886d956746d92ef93"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4NX0.2r2PvCaGNkspbE5ptpJmRpczDKx9DEB9xQem6zVNksM","level":"info","message":"auth send jwt","requestID":"723819f4ada68dcb0abc5d46a91ea793"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"723819f4ada68dcb0abc5d46a91ea793","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"723819f4ada68dcb0abc5d46a91ea793"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":423,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:45Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":423,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.709355,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:45Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"723819f4ada68dcb0abc5d46a91ea793","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931085,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4NX0.2r2PvCaGNkspbE5ptpJmRpczDKx9DEB9xQem6zVNksM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"723819f4ada68dcb0abc5d46a91ea793","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b5d8ad4-36b4-411c-831b-9620ffe7160e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b5d8ad4-36b4-411c-831b-9620ffe7160e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:45.107033367Z"}]},"request_id":"b930f080-66fb-4386-ba18-41551ab92c50","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931085.6433704} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"723819f4ada68dcb0abc5d46a91ea793","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"61a8e539-7481-4eb3-867b-74911051372d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931085.649518} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"723819f4ada68dcb0abc5d46a91ea793","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b5d8ad4-36b4-411c-831b-9620ffe7160e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b5d8ad4-36b4-411c-831b-9620ffe7160e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:45.107033367Z"}]},"request_id":"2bfb11e5-a9a7-4c84-b9f9-1d4623262109","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931085.6627607} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"723819f4ada68dcb0abc5d46a91ea793","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"723819f4ada68dcb0abc5d46a91ea793"} device-1 | {"level":"info","message":"PATCH /devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e 200 35ms","method":"PATCH","requestID":"723819f4ada68dcb0abc5d46a91ea793","responseTime":35,"status":200,"url":"/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e"} gateway-1 | {"time_local":"21/Sep/2024:15:04:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"723819f4ada68dcb0abc5d46a91ea793"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4NX0.2r2PvCaGNkspbE5ptpJmRpczDKx9DEB9xQem6zVNksM","level":"info","message":"auth send jwt","requestID":"6181aebf2a72331ad200f3057f580cac"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6181aebf2a72331ad200f3057f580cac","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6181aebf2a72331ad200f3057f580cac"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":424,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:45Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":424,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.294284,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:45Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"6181aebf2a72331ad200f3057f580cac","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931085,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4NX0.2r2PvCaGNkspbE5ptpJmRpczDKx9DEB9xQem6zVNksM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6181aebf2a72331ad200f3057f580cac","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6181aebf2a72331ad200f3057f580cac"} gateway-1 | {"time_local":"21/Sep/2024:15:04:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"6181aebf2a72331ad200f3057f580cac"} device-1 | {"level":"info","message":"POST /devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e/websocket 200 22ms","method":"POST","requestID":"6181aebf2a72331ad200f3057f580cac","responseTime":22,"status":200,"url":"/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4ebf687883a7a2267513afcc53155a67","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4ebf687883a7a2267513afcc53155a67","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4ebf687883a7a2267513afcc53155a67"} device-1 | {"level":"info","message":"OPTIONS /devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d/websocket 200 1ms","method":"OPTIONS","requestID":"4ebf687883a7a2267513afcc53155a67","responseTime":1,"status":200,"url":"/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4N30.E-PBZ_ggo0nrDZeX726164XZ4c-2ue6LZu4DzhwEryQ","level":"info","message":"auth send jwt","requestID":"1897291b130ae66f4887512bad8e4e35"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"1897291b130ae66f4887512bad8e4e35","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"1897291b130ae66f4887512bad8e4e35"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":425,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":425,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.251083,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1897291b130ae66f4887512bad8e4e35","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931087,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4N30.E-PBZ_ggo0nrDZeX726164XZ4c-2ue6LZu4DzhwEryQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1897291b130ae66f4887512bad8e4e35","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"1897291b130ae66f4887512bad8e4e35"} gateway-1 | {"time_local":"21/Sep/2024:15:04:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.030","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1897291b130ae66f4887512bad8e4e35"} device-1 | {"level":"info","message":"POST /devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d/websocket 200 22ms","method":"POST","requestID":"1897291b130ae66f4887512bad8e4e35","responseTime":22,"status":200,"url":"/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"61fd72b5ef33ec76c039e73551aa4b21","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"61fd72b5ef33ec76c039e73551aa4b21","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"61fd72b5ef33ec76c039e73551aa4b21"} device-1 | {"level":"info","message":"OPTIONS /devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d? 200 2ms","method":"OPTIONS","requestID":"61fd72b5ef33ec76c039e73551aa4b21","responseTime":2,"status":200,"url":"/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4N30.E-PBZ_ggo0nrDZeX726164XZ4c-2ue6LZu4DzhwEryQ","level":"info","message":"auth send jwt","requestID":"93a57f453f2b10f5a3bc17c3adc5b5af"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"93a57f453f2b10f5a3bc17c3adc5b5af","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"93a57f453f2b10f5a3bc17c3adc5b5af"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":426,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":426,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.297002,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"93a57f453f2b10f5a3bc17c3adc5b5af","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931087,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4N30.E-PBZ_ggo0nrDZeX726164XZ4c-2ue6LZu4DzhwEryQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"93a57f453f2b10f5a3bc17c3adc5b5af","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0e1a86e-ca08-4c27-a492-4e1eed6c689d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0e1a86e-ca08-4c27-a492-4e1eed6c689d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:45.155047388Z"}]},"request_id":"bea9b772-47f0-43de-8e92-8d4e07128aab","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931087.2427008} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"93a57f453f2b10f5a3bc17c3adc5b5af","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b8284ea1-d59e-4e67-a2a0-005ba0f47769","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931087.2502103} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"93a57f453f2b10f5a3bc17c3adc5b5af","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0e1a86e-ca08-4c27-a492-4e1eed6c689d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0e1a86e-ca08-4c27-a492-4e1eed6c689d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:45.155047388Z"}]},"request_id":"5b20ce90-7f6e-467e-b4e4-681f9a553993","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931087.2619815} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"93a57f453f2b10f5a3bc17c3adc5b5af","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"93a57f453f2b10f5a3bc17c3adc5b5af"} gateway-1 | {"time_local":"21/Sep/2024:15:04:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.044","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"93a57f453f2b10f5a3bc17c3adc5b5af"} device-1 | {"level":"info","message":"PATCH /devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d? 200 37ms","method":"PATCH","requestID":"93a57f453f2b10f5a3bc17c3adc5b5af","responseTime":37,"status":200,"url":"/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4N30.E-PBZ_ggo0nrDZeX726164XZ4c-2ue6LZu4DzhwEryQ","level":"info","message":"auth send jwt","requestID":"752862ec11193594a0c7a5ec7865fe79"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"752862ec11193594a0c7a5ec7865fe79","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"752862ec11193594a0c7a5ec7865fe79"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":427,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":427,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.407745,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"752862ec11193594a0c7a5ec7865fe79","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931087,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4N30.E-PBZ_ggo0nrDZeX726164XZ4c-2ue6LZu4DzhwEryQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"752862ec11193594a0c7a5ec7865fe79","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b5d8ad4-36b4-411c-831b-9620ffe7160e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b5d8ad4-36b4-411c-831b-9620ffe7160e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:45.107033367Z"}]},"request_id":"07702f52-eecc-4706-b34b-3d77d305dfff","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931087.2919185} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"752862ec11193594a0c7a5ec7865fe79","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"752862ec11193594a0c7a5ec7865fe79"} gateway-1 | {"time_local":"21/Sep/2024:15:04:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"752862ec11193594a0c7a5ec7865fe79"} device-1 | {"level":"info","message":"GET /devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e? 200 18ms","method":"GET","requestID":"752862ec11193594a0c7a5ec7865fe79","responseTime":18,"status":200,"url":"/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4N30.E-PBZ_ggo0nrDZeX726164XZ4c-2ue6LZu4DzhwEryQ","level":"info","message":"auth send jwt","requestID":"24fd573a8e98ce936f664409f57e1b51"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"24fd573a8e98ce936f664409f57e1b51","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"24fd573a8e98ce936f664409f57e1b51"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":428,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":428,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.188227,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"24fd573a8e98ce936f664409f57e1b51","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931087,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4N30.E-PBZ_ggo0nrDZeX726164XZ4c-2ue6LZu4DzhwEryQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"24fd573a8e98ce936f664409f57e1b51","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0e1a86e-ca08-4c27-a492-4e1eed6c689d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0e1a86e-ca08-4c27-a492-4e1eed6c689d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:45.155047388Z"}]},"request_id":"8e5a8ca3-090e-467e-b8f9-561da334aec0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931087.3172014} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"24fd573a8e98ce936f664409f57e1b51","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"24fd573a8e98ce936f664409f57e1b51"} device-1 | {"level":"info","message":"GET /devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d? 200 17ms","method":"GET","requestID":"24fd573a8e98ce936f664409f57e1b51","responseTime":17,"status":200,"url":"/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"24fd573a8e98ce936f664409f57e1b51"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4N30.E-PBZ_ggo0nrDZeX726164XZ4c-2ue6LZu4DzhwEryQ","level":"info","message":"auth send jwt","requestID":"e617a84a71aeccf3872ac8012f991d43"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e617a84a71aeccf3872ac8012f991d43","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"e617a84a71aeccf3872ac8012f991d43"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":429,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":429,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.970238,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e617a84a71aeccf3872ac8012f991d43","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931087,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4N30.E-PBZ_ggo0nrDZeX726164XZ4c-2ue6LZu4DzhwEryQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e617a84a71aeccf3872ac8012f991d43","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/64a2d761-c877-4148-b0df-4da96c3dc66e"},"level":"info","message":"Attempting to run experiment","requestID":"e617a84a71aeccf3872ac8012f991d43"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/64a2d761-c877-4148-b0df-4da96c3dc66e"},"level":"info","message":"Attempting to book experiment","requestID":"e617a84a71aeccf3872ac8012f991d43"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/64a2d761-c877-4148-b0df-4da96c3dc66e"},"level":"info","message":"Successfully booked experiment","requestID":"e617a84a71aeccf3872ac8012f991d43"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d7a52a60-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d7a57880-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":430,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":430,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.651867,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d7a52a60-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931087,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4N30.E-PBZ_ggo0nrDZeX726164XZ4c-2ue6LZu4DzhwEryQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d7a52a60-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45256","level":"info","msg":"Received request.","req_id":431,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"client_addr":"127.0.0.1:45256","level":"info","msg":"Sent response.","req_id":431,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.981648,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d7a57880-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931087,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4N30.E-PBZ_ggo0nrDZeX726164XZ4c-2ue6LZu4DzhwEryQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d7a57880-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b5d8ad4-36b4-411c-831b-9620ffe7160e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b5d8ad4-36b4-411c-831b-9620ffe7160e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:45.107033367Z"}]},"request_id":"77f4841b-9235-4333-a881-95a49270e38d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931087.37484} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d7a52a60-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0e1a86e-ca08-4c27-a492-4e1eed6c689d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0e1a86e-ca08-4c27-a492-4e1eed6c689d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:45.155047388Z"}]},"request_id":"314ddd4f-6886-4c5f-a025-b9b8d1c8fe7e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931087.37855} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d7a52a60-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d7a57880-782a-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e? 200 14ms","method":"GET","requestID":"d7a52a60-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d7a57880-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d? 200 14ms","method":"GET","requestID":"d7a57880-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/64a2d761-c877-4148-b0df-4da96c3dc66e"},"level":"info","message":"Setting up experiment","requestID":"e617a84a71aeccf3872ac8012f991d43"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/64a2d761-c877-4148-b0df-4da96c3dc66e"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"e617a84a71aeccf3872ac8012f991d43"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/64a2d761-c877-4148-b0df-4da96c3dc66e"},"level":"info","message":"Successfully locked booking for experiment","requestID":"e617a84a71aeccf3872ac8012f991d43"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/64a2d761-c877-4148-b0df-4da96c3dc66e"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"e617a84a71aeccf3872ac8012f991d43"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/64a2d761-c877-4148-b0df-4da96c3dc66e"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"e617a84a71aeccf3872ac8012f991d43"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/64a2d761-c877-4148-b0df-4da96c3dc66e"},"level":"info","message":"Attempting to update booking for experiment","requestID":"e617a84a71aeccf3872ac8012f991d43"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/64a2d761-c877-4148-b0df-4da96c3dc66e"},"level":"info","message":"Successfully updated booking for experiment","requestID":"e617a84a71aeccf3872ac8012f991d43"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/64a2d761-c877-4148-b0df-4da96c3dc66e"},"level":"info","message":"Successfully set up experiment","requestID":"e617a84a71aeccf3872ac8012f991d43"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d7af3c80-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d7af8aa0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7afb1b0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":432,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":432,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.020932,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"client_addr":"127.0.0.1:45256","level":"info","msg":"Received request.","req_id":433,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d7af3c80-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931087,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4N30.E-PBZ_ggo0nrDZeX726164XZ4c-2ue6LZu4DzhwEryQ"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/64a2d761-c877-4148-b0df-4da96c3dc66e"},"level":"info","message":"Successfully running experiment","requestID":"e617a84a71aeccf3872ac8012f991d43"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d7af3c80-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45256","level":"info","msg":"Sent response.","req_id":433,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.90184,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d7af8aa0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931087,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4N30.E-PBZ_ggo0nrDZeX726164XZ4c-2ue6LZu4DzhwEryQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d7af8aa0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45272","level":"info","msg":"Received request.","req_id":434,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0e1a86e-ca08-4c27-a492-4e1eed6c689d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0e1a86e-ca08-4c27-a492-4e1eed6c689d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:45.155047388Z"}]},"request_id":"c2c16537-9c05-41a1-89d5-084402edd117","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931087.4454744} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d7af8aa0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b5d8ad4-36b4-411c-831b-9620ffe7160e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b5d8ad4-36b4-411c-831b-9620ffe7160e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:45.107033367Z"}]},"request_id":"b42fca1b-45ee-481f-b89f-30bc9358fa4f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931087.4475029} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d7af3c80-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b5d8ad4-36b4-411c-831b-9620ffe7160e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"61562b50-5a99-4596-91ee-2e252c25bec3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931087.4490273} authorization-1 | {"client_addr":"127.0.0.1:45272","level":"info","msg":"Sent response.","req_id":434,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.635437,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d7afb1b0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"d7afb1b0-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d7af8aa0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d? 200 23ms","method":"GET","requestID":"d7af8aa0-782a-11ef-88d4-5fea3f61bb98","responseTime":23,"status":200,"url":"/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d7af3c80-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e? 200 26ms","method":"GET","requestID":"d7af3c80-782a-11ef-88d4-5fea3f61bb98","responseTime":26,"status":200,"url":"/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d7afb1b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e/signaling 200 25ms","method":"POST","requestID":"d7afb1b0-782a-11ef-88d4-5fea3f61bb98","responseTime":25,"status":200,"url":"/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7b3d060-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7b41e80-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":435,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"client_addr":"127.0.0.1:45256","level":"info","msg":"Received request.","req_id":436,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b5d8ad4-36b4-411c-831b-9620ffe7160e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8dfac237-9302-4f22-a177-bb1999e12934","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931087.468441} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":435,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.396477,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d7b3d060-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"d7b3d060-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0e1a86e-ca08-4c27-a492-4e1eed6c689d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2bf00d6b-dcf5-4958-af1b-4da5dfd27555","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931087.470119} authorization-1 | {"client_addr":"127.0.0.1:45256","level":"info","msg":"Sent response.","req_id":436,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.144811,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d7b41e80-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"d7b41e80-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d7b3d060-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e/signaling 200 13ms","method":"POST","requestID":"d7b3d060-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d7b41e80-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d/signaling 200 13ms","method":"POST","requestID":"d7b41e80-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7b64160-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":437,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0e1a86e-ca08-4c27-a492-4e1eed6c689d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"70c5f942-6ac8-4c15-9ca9-98b004daf9d4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931087.4828851} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":437,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.205387,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d7b64160-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d7b64160-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d7b64160-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d/signaling 200 10ms","method":"POST","requestID":"d7b64160-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/64a2d761-c877-4148-b0df-4da96c3dc66e"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"e617a84a71aeccf3872ac8012f991d43"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d7b81620-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d7b83d30-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":438,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":438,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.380021,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"client_addr":"127.0.0.1:45256","level":"info","msg":"Received request.","req_id":439,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d7b81620-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931087,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4N30.E-PBZ_ggo0nrDZeX726164XZ4c-2ue6LZu4DzhwEryQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d7b81620-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45256","level":"info","msg":"Sent response.","req_id":439,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.765349,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d7b83d30-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931087,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4N30.E-PBZ_ggo0nrDZeX726164XZ4c-2ue6LZu4DzhwEryQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d7b83d30-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F64a2d761-c877-4148-b0df-4da96c3dc66e#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F64a2d761-c877-4148-b0df-4da96c3dc66e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"4d369630-a8c9-48bc-8613-17c5ec7b4ba0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931087.5027492} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f1321c54-b7f1-4478-9b54-590fe46e4751","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931087.5029888} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b5d8ad4-36b4-411c-831b-9620ffe7160e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b5d8ad4-36b4-411c-831b-9620ffe7160e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:45.107033367Z"}]},"request_id":"40201bc9-804f-4009-ab29-4d243f8f243f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931087.5040529} authorization-1 | {"level":"info","message":"POST /relations/update 200 64ms","method":"POST","requestID":"e617a84a71aeccf3872ac8012f991d43","responseTime":64,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d7b81620-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0e1a86e-ca08-4c27-a492-4e1eed6c689d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0e1a86e-ca08-4c27-a492-4e1eed6c689d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:45.155047388Z"}]},"request_id":"e3c34ad5-f57d-451f-b001-5a834b71ded3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931087.505064} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d7b83d30-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d7b81620-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e? 200 22ms","method":"GET","requestID":"d7b81620-782a-11ef-88d4-5fea3f61bb98","responseTime":22,"status":200,"url":"/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d7b83d30-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d? 200 22ms","method":"GET","requestID":"d7b83d30-782a-11ef-88d4-5fea3f61bb98","responseTime":22,"status":200,"url":"/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d?"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/64a2d761-c877-4148-b0df-4da96c3dc66e","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"e617a84a71aeccf3872ac8012f991d43"} experiment-1 | {"level":"info","message":"POST /experiments? 201 185ms","method":"POST","requestID":"e617a84a71aeccf3872ac8012f991d43","responseTime":185,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"782","request_time":"0.191","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e617a84a71aeccf3872ac8012f991d43"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/64a2d761-c877-4148-b0df-4da96c3dc66e"},"level":"info","message":"Building connection plan","requestID":"e617a84a71aeccf3872ac8012f991d43"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"76e555f8-a88c-4560-a84c-9006c26e79ea"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"26f36b00-2248-4fc5-8b61-809b710528d4"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"f8eafd0a-223e-4e98-b44d-1e2e2d5b9fba"}]},"level":"info","message":"Built pairwise service configurations","requestID":"e617a84a71aeccf3872ac8012f991d43"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"e617a84a71aeccf3872ac8012f991d43"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"d7bc34d0-782a-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4N30.E-PBZ_ggo0nrDZeX726164XZ4c-2ue6LZu4DzhwEryQ","level":"info","message":"auth send jwt","requestID":"b011fec9571c9f9b41c55a201074442e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b011fec9571c9f9b41c55a201074442e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b011fec9571c9f9b41c55a201074442e"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":440,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":440,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.778464,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"client_addr":"127.0.0.1:45256","level":"info","msg":"Received request.","req_id":441,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d7bc34d0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931087,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4N30.E-PBZ_ggo0nrDZeX726164XZ4c-2ue6LZu4DzhwEryQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d7bc34d0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45256","level":"info","msg":"Sent response.","req_id":441,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.744501,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b011fec9571c9f9b41c55a201074442e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931087,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4N30.E-PBZ_ggo0nrDZeX726164XZ4c-2ue6LZu4DzhwEryQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b011fec9571c9f9b41c55a201074442e","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b5d8ad4-36b4-411c-831b-9620ffe7160e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b5d8ad4-36b4-411c-831b-9620ffe7160e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:45.107033367Z"}]},"request_id":"187c8bec-9b5c-4649-a762-df886a8679c6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931087.5287209} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b011fec9571c9f9b41c55a201074442e","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b011fec9571c9f9b41c55a201074442e"} gateway-1 | {"time_local":"21/Sep/2024:15:04:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b011fec9571c9f9b41c55a201074442e"} device-1 | {"level":"info","message":"GET /devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e? 200 13ms","method":"GET","requestID":"b011fec9571c9f9b41c55a201074442e","responseTime":13,"status":200,"url":"/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"faa25574-f193-4c14-9970-8e46190fed0c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931087.532441} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"24cc70f5-3193-43bc-9877-4ab9169a7e4b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931087.532669} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"d7bc34d0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/update"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4N30.E-PBZ_ggo0nrDZeX726164XZ4c-2ue6LZu4DzhwEryQ","level":"info","message":"auth send jwt","requestID":"b0b91f6498e65daeb19f5ce5fb4580ee"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b0b91f6498e65daeb19f5ce5fb4580ee","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b0b91f6498e65daeb19f5ce5fb4580ee"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":442,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":442,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.722253,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b0b91f6498e65daeb19f5ce5fb4580ee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931087,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4N30.E-PBZ_ggo0nrDZeX726164XZ4c-2ue6LZu4DzhwEryQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b0b91f6498e65daeb19f5ce5fb4580ee","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0e1a86e-ca08-4c27-a492-4e1eed6c689d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0e1a86e-ca08-4c27-a492-4e1eed6c689d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:45.155047388Z"}]},"request_id":"3623c676-1083-4c8f-822d-d5749328ac89","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931087.5445583} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b0b91f6498e65daeb19f5ce5fb4580ee","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"d7bc34d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"d7bc34d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/837e2f71-a4d3-4490-ad4b-c1c832cfe031'","requestID":"d7bc34d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/837e2f71-a4d3-4490-ad4b-c1c832cfe031'","requestID":"d7bc34d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"d7bc34d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 32ms","method":"POST","requestID":"d7bc34d0-782a-11ef-88d4-5fea3f61bb98","responseTime":32,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b0b91f6498e65daeb19f5ce5fb4580ee"} gateway-1 | {"time_local":"21/Sep/2024:15:04:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b0b91f6498e65daeb19f5ce5fb4580ee"} device-1 | {"level":"info","message":"GET /devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d? 200 13ms","method":"GET","requestID":"b0b91f6498e65daeb19f5ce5fb4580ee","responseTime":13,"status":200,"url":"/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"d7bc34d0-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/64a2d761-c877-4148-b0df-4da96c3dc66e"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"e617a84a71aeccf3872ac8012f991d43"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7c53580-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":443,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b5d8ad4-36b4-411c-831b-9620ffe7160e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9c982bf5-9999-4559-85ba-c2a81d25e310","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931087.581126} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":443,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.338468,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d7c53580-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d7c53580-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d7c53580-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e/signaling 200 9ms","method":"POST","requestID":"d7c53580-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7c70a40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"device":"b0e1a86e-ca08-4c27-a492-4e1eed6c689d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"b0e1a86e-ca08-4c27-a492-4e1eed6c689d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":444,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0e1a86e-ca08-4c27-a492-4e1eed6c689d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"80c3b218-6dcd-47c1-90a8-8ce7bd4d01ce","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931087.5936239} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":444,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.334519,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d7c70a40-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d7c70a40-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d7c70a40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d/signaling 200 9ms","method":"POST","requestID":"d7c70a40-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d/signaling"} device-1 | {"device":"9b5d8ad4-36b4-411c-831b-9620ffe7160e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"837e2f71-a4d3-4490-ad4b-c1c832cfe031","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 1180404749558132733 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=msid-semantic: WMS\r\nm=application 9 DTLS/SCTP 5000\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:4Mas\r\na=ice-pwd:fFTgiKgQLp3gYYSoWjE+bHQ1\r\na=ice-options:trickle\r\na=fingerprint:sha-256 AE:15:D2:46:41:5E:B0:3F:3E:5B:FD:C2:F6:90:31:74:53:47:9B:60:46:12:75:C2:A4:61:D0:33:D7:DC:CB:7D\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"b0e1a86e-ca08-4c27-a492-4e1eed6c689d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"device":"b0e1a86e-ca08-4c27-a492-4e1eed6c689d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:3549253502 1 udp 2113937151 55c268c4-ea60-40e5-b15c-b7aa0c087b22.local 45378 typ host generation 0 ufrag 4Mas network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b0e1a86e-ca08-4c27-a492-4e1eed6c689d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1470113025 1 udp 1677729535 141.24.211.56 45378 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 4Mas network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b0e1a86e-ca08-4c27-a492-4e1eed6c689d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/837e2f71-a4d3-4490-ad4b-c1c832cfe031' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"837e2f71-a4d3-4490-ad4b-c1c832cfe031","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d'"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"63887bf595e0211ea59da1d097d28c55","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} device-1 | {"device":"9b5d8ad4-36b4-411c-831b-9620ffe7160e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"9b5d8ad4-36b4-411c-831b-9620ffe7160e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"9b5d8ad4-36b4-411c-831b-9620ffe7160e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"63887bf595e0211ea59da1d097d28c55","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"b0e1a86e-ca08-4c27-a492-4e1eed6c689d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/837e2f71-a4d3-4490-ad4b-c1c832cfe031"}}},"level":"info","message":"received a callback","requestID":"63887bf595e0211ea59da1d097d28c55"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"63887bf595e0211ea59da1d097d28c55","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"63887bf595e0211ea59da1d097d28c55"} device-1 | {"data":{"peerconnection":"837e2f71-a4d3-4490-ad4b-c1c832cfe031","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9b5d8ad4-36b4-411c-831b-9620ffe7160e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"b0e1a86e-ca08-4c27-a492-4e1eed6c689d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"837e2f71-a4d3-4490-ad4b-c1c832cfe031","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9b5d8ad4-36b4-411c-831b-9620ffe7160e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"b0e1a86e-ca08-4c27-a492-4e1eed6c689d","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/837e2f71-a4d3-4490-ad4b-c1c832cfe031' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"837e2f71-a4d3-4490-ad4b-c1c832cfe031","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"08ba5a7859423495961058e874faf795","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"08ba5a7859423495961058e874faf795","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/837e2f71-a4d3-4490-ad4b-c1c832cfe031"}}},"level":"info","message":"received a callback","requestID":"08ba5a7859423495961058e874faf795"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"d90c5b80-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":445,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:49Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F837e2f71-a4d3-4490-ad4b-c1c832cfe031","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0d442c8c-7417-4c68-bee1-69608ad32d93","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931089.7277179} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":445,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.73941,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/837e2f71-a4d3-4490-ad4b-c1c832cfe031","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d90c5b80-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/837e2f71-a4d3-4490-ad4b-c1c832cfe031","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"d90c5b80-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"d90c5b80-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/837e2f71-a4d3-4490-ad4b-c1c832cfe031 200 21ms","method":"GET","requestID":"d90c5b80-782a-11ef-88d4-5fea3f61bb98","responseTime":21,"status":200,"url":"/peerconnections/837e2f71-a4d3-4490-ad4b-c1c832cfe031"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 50ms","method":"POST","requestID":"08ba5a7859423495961058e874faf795","responseTime":50,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch","requestID":"08ba5a7859423495961058e874faf795"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d912c420-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":446,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:49Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0e1a86e-ca08-4c27-a492-4e1eed6c689d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b080fdce-d0f8-475f-b23f-96dc1b503ff9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931089.7691073} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":446,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.733222,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d912c420-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"d912c420-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d912c420-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d/signaling 200 12ms","method":"POST","requestID":"d912c420-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d914e700-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":447,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:49Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b5d8ad4-36b4-411c-831b-9620ffe7160e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"950916e3-fed0-4ea1-915c-e40ff11263ac","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931089.7811756} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":447,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.698383,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d914e700-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d914e700-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d914e700-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e/signaling 200 10ms","method":"POST","requestID":"d914e700-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4OX0.OT47W5uhJtm88mXkrj8KjxIPgD8iC9Z1L-DqtQP_IgU","level":"info","message":"auth send jwt","requestID":"59c9c4904b108bc2e92e296876ac031e"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"59c9c4904b108bc2e92e296876ac031e","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/64a2d761-c877-4148-b0df-4da96c3dc66e","requestID":"59c9c4904b108bc2e92e296876ac031e"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":448,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:49Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":448,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.171187,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/64a2d761-c877-4148-b0df-4da96c3dc66e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"59c9c4904b108bc2e92e296876ac031e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/64a2d761-c877-4148-b0df-4da96c3dc66e","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931089,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4OX0.OT47W5uhJtm88mXkrj8KjxIPgD8iC9Z1L-DqtQP_IgU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"59c9c4904b108bc2e92e296876ac031e","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/64a2d761-c877-4148-b0df-4da96c3dc66e","requestID":"59c9c4904b108bc2e92e296876ac031e"} experiment-1 | {"level":"info","message":"GET /experiments/64a2d761-c877-4148-b0df-4da96c3dc66e 200 16ms","method":"GET","requestID":"59c9c4904b108bc2e92e296876ac031e","responseTime":16,"status":200,"url":"/experiments/64a2d761-c877-4148-b0df-4da96c3dc66e"} gateway-1 | {"time_local":"21/Sep/2024:15:04:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/64a2d761-c877-4148-b0df-4da96c3dc66e HTTP/1.1","status": "200","body_bytes_sent":"855","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"59c9c4904b108bc2e92e296876ac031e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4OX0.OT47W5uhJtm88mXkrj8KjxIPgD8iC9Z1L-DqtQP_IgU","level":"info","message":"auth send jwt","requestID":"c56d1e8ec1b190c7d2156bf0f42f335b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c56d1e8ec1b190c7d2156bf0f42f335b","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/64a2d761-c877-4148-b0df-4da96c3dc66e","requestID":"c56d1e8ec1b190c7d2156bf0f42f335b"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":449,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:49Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":449,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.179277,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:49Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/64a2d761-c877-4148-b0df-4da96c3dc66e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c56d1e8ec1b190c7d2156bf0f42f335b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/64a2d761-c877-4148-b0df-4da96c3dc66e","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931089,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4OX0.OT47W5uhJtm88mXkrj8KjxIPgD8iC9Z1L-DqtQP_IgU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c56d1e8ec1b190c7d2156bf0f42f335b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/64a2d761-c877-4148-b0df-4da96c3dc66e"},"level":"info","message":"Attempting to finish experiment","requestID":"c56d1e8ec1b190c7d2156bf0f42f335b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"d936c6e0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":450,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":450,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.145422,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:50Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/837e2f71-a4d3-4490-ad4b-c1c832cfe031","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d936c6e0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/837e2f71-a4d3-4490-ad4b-c1c832cfe031","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931089,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA4OX0.OT47W5uhJtm88mXkrj8KjxIPgD8iC9Z1L-DqtQP_IgU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d936c6e0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/837e2f71-a4d3-4490-ad4b-c1c832cfe031","device":"b0e1a86e-ca08-4c27-a492-4e1eed6c689d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"9b5d8ad4-36b4-411c-831b-9620ffe7160e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"9b5d8ad4-36b4-411c-831b-9620ffe7160e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"9b5d8ad4-36b4-411c-831b-9620ffe7160e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/837e2f71-a4d3-4490-ad4b-c1c832cfe031' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/837e2f71-a4d3-4490-ad4b-c1c832cfe031' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"837e2f71-a4d3-4490-ad4b-c1c832cfe031","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F837e2f71-a4d3-4490-ad4b-c1c832cfe031': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F837e2f71-a4d3-4490-ad4b-c1c832cfe031","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"471cf301-b6b4-4833-97cb-33a0e3a47050","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931090.0196795} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4536a178-f118-44be-bfac-fc4d9eecd54c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931090.0199778} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cfdd4516ee06ddde6721d7748686ef3f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"cfdd4516ee06ddde6721d7748686ef3f","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"d936c6e0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"be75f637286d74e640fdd2cd6fbcd10a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/837e2f71-a4d3-4490-ad4b-c1c832cfe031"}}},"level":"info","message":"received a callback","requestID":"cfdd4516ee06ddde6721d7748686ef3f"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"be75f637286d74e640fdd2cd6fbcd10a","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/837e2f71-a4d3-4490-ad4b-c1c832cfe031"}}},"level":"info","message":"received a callback","requestID":"be75f637286d74e640fdd2cd6fbcd10a"} device-1 | {"data":{"peerconnection":"837e2f71-a4d3-4490-ad4b-c1c832cfe031","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"d936c6e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/837e2f71-a4d3-4490-ad4b-c1c832cfe031 204 46ms","method":"DELETE","requestID":"d936c6e0-782a-11ef-88d4-5fea3f61bb98","responseTime":46,"status":204,"url":"/peerconnections/837e2f71-a4d3-4490-ad4b-c1c832cfe031"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/64a2d761-c877-4148-b0df-4da96c3dc66e"},"level":"info","message":"Successfully finished experiment","requestID":"c56d1e8ec1b190c7d2156bf0f42f335b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d940d900-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":451,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:50Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0e1a86e-ca08-4c27-a492-4e1eed6c689d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"deb0ef98-ae1d-4dfe-b313-046b3d2af277","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931090.0703406} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":451,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.53306,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d940d900-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d940d900-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d940d900-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F64a2d761-c877-4148-b0df-4da96c3dc66e': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F64a2d761-c877-4148-b0df-4da96c3dc66e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"b9971e13-20c1-4dc1-a91d-03e69136138b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931090.0768337} device-1 | {"level":"info","message":"POST /devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d/signaling 200 13ms","method":"POST","requestID":"d940d900-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"af0deb76-3195-4e9e-88e2-0d0b27813cb7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931090.0772033} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"c56d1e8ec1b190c7d2156bf0f42f335b","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d9434a00-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":452,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:50Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b5d8ad4-36b4-411c-831b-9620ffe7160e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"009575b4-9f5b-4982-8889-2d237900a369","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931090.0874758} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":452,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.738381,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d9434a00-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"d9434a00-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d9434a00-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e/signaling 200 13ms","method":"POST","requestID":"d9434a00-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/64a2d761-c877-4148-b0df-4da96c3dc66e","requestID":"c56d1e8ec1b190c7d2156bf0f42f335b"} gateway-1 | {"time_local":"21/Sep/2024:15:04:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/64a2d761-c877-4148-b0df-4da96c3dc66e HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.183","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c56d1e8ec1b190c7d2156bf0f42f335b"} experiment-1 | {"level":"info","message":"DELETE /experiments/64a2d761-c877-4148-b0df-4da96c3dc66e 204 178ms","method":"DELETE","requestID":"c56d1e8ec1b190c7d2156bf0f42f335b","responseTime":178,"status":204,"url":"/experiments/64a2d761-c877-4148-b0df-4da96c3dc66e"} gateway-1 | {"time_local":"21/Sep/2024:15:04:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2925","request_time":"4.463","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"bdac73b109603cc6802f5a91d477abf4"} gateway-1 | {"time_local":"21/Sep/2024:15:04:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.144","http_referrer":"","http_user_agent":"node-fetch","requestID":"cfdd4516ee06ddde6721d7748686ef3f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 141ms","method":"POST","requestID":"cfdd4516ee06ddde6721d7748686ef3f","responseTime":141,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MH0.kbFUgYu0LT_evzT8aVYGwEWJLtEOg7FzG5euHDi_RRQ","level":"info","message":"auth send jwt","requestID":"af68cedba4e6300c98a6184ab04fb454"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"af68cedba4e6300c98a6184ab04fb454","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 145ms","method":"POST","requestID":"be75f637286d74e640fdd2cd6fbcd10a","responseTime":145,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.149","http_referrer":"","http_user_agent":"node-fetch","requestID":"be75f637286d74e640fdd2cd6fbcd10a"} device-1 | {"level":"info","message":"postDevices called","requestID":"af68cedba4e6300c98a6184ab04fb454"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":453,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":453,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.839636,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"af68cedba4e6300c98a6184ab04fb454","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931090,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MH0.kbFUgYu0LT_evzT8aVYGwEWJLtEOg7FzG5euHDi_RRQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"af68cedba4e6300c98a6184ab04fb454","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:04:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2462","request_time":"2.985","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"65ad35c5134afdecc839411a3758a844"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/9b5d8ad4-36b4-411c-831b-9620ffe7160e' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F24d8760c-94ed-4523-943e-230cdcd3ba47","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4d6aab7e-6d74-4f23-a284-16af7d494874","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931090.207046} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"af68cedba4e6300c98a6184ab04fb454","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/b0e1a86e-ca08-4c27-a492-4e1eed6c689d' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d4ac0b28-e56e-4f74-b949-0f9959845bec","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931090.213165} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"af68cedba4e6300c98a6184ab04fb454","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F24d8760c-94ed-4523-943e-230cdcd3ba47","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"09ec4205-74df-4487-97e0-95a737304474","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931090.2220976} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"52176713-5164-493d-ba32-e5772e6cf28a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931090.2223928} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"af68cedba4e6300c98a6184ab04fb454","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F24d8760c-94ed-4523-943e-230cdcd3ba47","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F24d8760c-94ed-4523-943e-230cdcd3ba47","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:50.222077325Z"}]},"request_id":"4aa558c0-4d60-4fbc-ab8d-c34eb03c076e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931090.2263198} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"af68cedba4e6300c98a6184ab04fb454","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"af68cedba4e6300c98a6184ab04fb454"} gateway-1 | {"time_local":"21/Sep/2024:15:04:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.066","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"af68cedba4e6300c98a6184ab04fb454"} device-1 | {"level":"info","message":"POST /devices? 201 60ms","method":"POST","requestID":"af68cedba4e6300c98a6184ab04fb454","responseTime":60,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MH0.kbFUgYu0LT_evzT8aVYGwEWJLtEOg7FzG5euHDi_RRQ","level":"info","message":"auth send jwt","requestID":"8af54d496684fe5e67ee2a492cf3cb31"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8af54d496684fe5e67ee2a492cf3cb31","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8af54d496684fe5e67ee2a492cf3cb31"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":454,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":454,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.690985,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"8af54d496684fe5e67ee2a492cf3cb31","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931090,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MH0.kbFUgYu0LT_evzT8aVYGwEWJLtEOg7FzG5euHDi_RRQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8af54d496684fe5e67ee2a492cf3cb31","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07d9eb82-ffa2-464b-9f5f-c90ce13d3011","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4329bf03-39c4-4624-8df5-56489cd58f26","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931090.2732103} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8af54d496684fe5e67ee2a492cf3cb31","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a498b557-70fa-4f1c-ac6a-8d139fb9f1b7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931090.2787805} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"8af54d496684fe5e67ee2a492cf3cb31","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07d9eb82-ffa2-464b-9f5f-c90ce13d3011","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"c30e9a2a-da2b-4cba-b7d3-b8a040ee790d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931090.2918737} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d95f6f6e-e764-4b04-a7ce-fedc2ac81ac4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931090.2920623} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"8af54d496684fe5e67ee2a492cf3cb31","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07d9eb82-ffa2-464b-9f5f-c90ce13d3011","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07d9eb82-ffa2-464b-9f5f-c90ce13d3011","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:50.291840817Z"}]},"request_id":"16cbdf00-e552-4eba-b680-c3fce5cc8231","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931090.29654} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8af54d496684fe5e67ee2a492cf3cb31","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8af54d496684fe5e67ee2a492cf3cb31"} gateway-1 | {"time_local":"21/Sep/2024:15:04:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.070","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8af54d496684fe5e67ee2a492cf3cb31"} device-1 | {"level":"info","message":"POST /devices? 201 65ms","method":"POST","requestID":"8af54d496684fe5e67ee2a492cf3cb31","responseTime":65,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MH0.kbFUgYu0LT_evzT8aVYGwEWJLtEOg7FzG5euHDi_RRQ","level":"info","message":"auth send jwt","requestID":"252b6ea0de5df17a88779deba8677765"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"252b6ea0de5df17a88779deba8677765","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MH0.kbFUgYu0LT_evzT8aVYGwEWJLtEOg7FzG5euHDi_RRQ","level":"info","message":"auth send jwt","requestID":"6b82293ad2cb24676f265c7683e43f28"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6b82293ad2cb24676f265c7683e43f28","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"252b6ea0de5df17a88779deba8677765"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"6b82293ad2cb24676f265c7683e43f28"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":455,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":455,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.632438,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"252b6ea0de5df17a88779deba8677765","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931090,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MH0.kbFUgYu0LT_evzT8aVYGwEWJLtEOg7FzG5euHDi_RRQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"252b6ea0de5df17a88779deba8677765","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45256","level":"info","msg":"Received request.","req_id":456,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:50Z"} authorization-1 | {"client_addr":"127.0.0.1:45256","level":"info","msg":"Sent response.","req_id":456,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.555377,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"6b82293ad2cb24676f265c7683e43f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931090,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MH0.kbFUgYu0LT_evzT8aVYGwEWJLtEOg7FzG5euHDi_RRQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6b82293ad2cb24676f265c7683e43f28","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F24d8760c-94ed-4523-943e-230cdcd3ba47","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F24d8760c-94ed-4523-943e-230cdcd3ba47","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:50.222077325Z"}]},"request_id":"2563f0e5-deea-463e-b098-d61f5a153079","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931090.7773354} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"252b6ea0de5df17a88779deba8677765","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07d9eb82-ffa2-464b-9f5f-c90ce13d3011","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07d9eb82-ffa2-464b-9f5f-c90ce13d3011","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:50.291840817Z"}]},"request_id":"d84ac1bb-af18-47e2-bf4a-968dc823ea3f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931090.7783556} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6b82293ad2cb24676f265c7683e43f28","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ea0d4ffa-129d-420d-9cfa-d6cbefba51ae","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931090.782824} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"252b6ea0de5df17a88779deba8677765","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d355ec4b-955e-40fb-93d0-835dfb52d222","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931090.78463} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"6b82293ad2cb24676f265c7683e43f28","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07d9eb82-ffa2-464b-9f5f-c90ce13d3011","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07d9eb82-ffa2-464b-9f5f-c90ce13d3011","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:50.291840817Z"}]},"request_id":"7522f6b6-0cf9-49b4-ac17-41009353ed3e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931090.7874987} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6b82293ad2cb24676f265c7683e43f28","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"6b82293ad2cb24676f265c7683e43f28"} gateway-1 | {"time_local":"21/Sep/2024:15:04:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.032","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"6b82293ad2cb24676f265c7683e43f28"} device-1 | {"level":"info","message":"PATCH /devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011 200 22ms","method":"PATCH","requestID":"6b82293ad2cb24676f265c7683e43f28","responseTime":22,"status":200,"url":"/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MH0.kbFUgYu0LT_evzT8aVYGwEWJLtEOg7FzG5euHDi_RRQ","level":"info","message":"auth send jwt","requestID":"f212c7950e8ea399a6ff7e273c24f239"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f212c7950e8ea399a6ff7e273c24f239","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f212c7950e8ea399a6ff7e273c24f239"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":457,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":457,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.890327,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f212c7950e8ea399a6ff7e273c24f239","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931090,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MH0.kbFUgYu0LT_evzT8aVYGwEWJLtEOg7FzG5euHDi_RRQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f212c7950e8ea399a6ff7e273c24f239","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F24d8760c-94ed-4523-943e-230cdcd3ba47","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F24d8760c-94ed-4523-943e-230cdcd3ba47","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:50.222077325Z"}]},"request_id":"b2b7601a-cb03-469e-96e3-27449d2f3994","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931090.8030949} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"252b6ea0de5df17a88779deba8677765","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"252b6ea0de5df17a88779deba8677765"} device-1 | {"level":"info","message":"PATCH /devices/24d8760c-94ed-4523-943e-230cdcd3ba47 200 39ms","method":"PATCH","requestID":"252b6ea0de5df17a88779deba8677765","responseTime":39,"status":200,"url":"/devices/24d8760c-94ed-4523-943e-230cdcd3ba47"} gateway-1 | {"time_local":"21/Sep/2024:15:04:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/24d8760c-94ed-4523-943e-230cdcd3ba47 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.047","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"252b6ea0de5df17a88779deba8677765"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MH0.kbFUgYu0LT_evzT8aVYGwEWJLtEOg7FzG5euHDi_RRQ","level":"info","message":"auth send jwt","requestID":"5998ce2231c42fbb11ad158ad9cb5c8d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5998ce2231c42fbb11ad158ad9cb5c8d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5998ce2231c42fbb11ad158ad9cb5c8d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f212c7950e8ea399a6ff7e273c24f239"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":458,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:50Z"} gateway-1 | {"time_local":"21/Sep/2024:15:04:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f212c7950e8ea399a6ff7e273c24f239"} device-1 | {"level":"info","message":"POST /devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011/websocket 200 18ms","method":"POST","requestID":"f212c7950e8ea399a6ff7e273c24f239","responseTime":18,"status":200,"url":"/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011/websocket"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":458,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.747624,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"5998ce2231c42fbb11ad158ad9cb5c8d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931090,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MH0.kbFUgYu0LT_evzT8aVYGwEWJLtEOg7FzG5euHDi_RRQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5998ce2231c42fbb11ad158ad9cb5c8d","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5998ce2231c42fbb11ad158ad9cb5c8d"} gateway-1 | {"time_local":"21/Sep/2024:15:04:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/24d8760c-94ed-4523-943e-230cdcd3ba47/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"5998ce2231c42fbb11ad158ad9cb5c8d"} device-1 | {"level":"info","message":"POST /devices/24d8760c-94ed-4523-943e-230cdcd3ba47/websocket 200 21ms","method":"POST","requestID":"5998ce2231c42fbb11ad158ad9cb5c8d","responseTime":21,"status":200,"url":"/devices/24d8760c-94ed-4523-943e-230cdcd3ba47/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MH0.kbFUgYu0LT_evzT8aVYGwEWJLtEOg7FzG5euHDi_RRQ","level":"info","message":"auth send jwt","requestID":"71c8d0a16ae52915c49cf164544a819c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"71c8d0a16ae52915c49cf164544a819c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"71c8d0a16ae52915c49cf164544a819c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":459,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":459,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.319982,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"71c8d0a16ae52915c49cf164544a819c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931090,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MH0.kbFUgYu0LT_evzT8aVYGwEWJLtEOg7FzG5euHDi_RRQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"71c8d0a16ae52915c49cf164544a819c","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F24d8760c-94ed-4523-943e-230cdcd3ba47","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F24d8760c-94ed-4523-943e-230cdcd3ba47","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:50.222077325Z"}]},"request_id":"501b56c2-6c2c-48ab-8882-5eb341a8f53a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931090.8599935} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"71c8d0a16ae52915c49cf164544a819c","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"71c8d0a16ae52915c49cf164544a819c"} device-1 | {"level":"info","message":"GET /devices/24d8760c-94ed-4523-943e-230cdcd3ba47? 200 14ms","method":"GET","requestID":"71c8d0a16ae52915c49cf164544a819c","responseTime":14,"status":200,"url":"/devices/24d8760c-94ed-4523-943e-230cdcd3ba47?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/24d8760c-94ed-4523-943e-230cdcd3ba47? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"71c8d0a16ae52915c49cf164544a819c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MH0.kbFUgYu0LT_evzT8aVYGwEWJLtEOg7FzG5euHDi_RRQ","level":"info","message":"auth send jwt","requestID":"10a9a3ca35428415536af7419cc54083"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"10a9a3ca35428415536af7419cc54083","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"10a9a3ca35428415536af7419cc54083"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":460,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":460,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.742059,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"10a9a3ca35428415536af7419cc54083","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931090,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MH0.kbFUgYu0LT_evzT8aVYGwEWJLtEOg7FzG5euHDi_RRQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"10a9a3ca35428415536af7419cc54083","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07d9eb82-ffa2-464b-9f5f-c90ce13d3011","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07d9eb82-ffa2-464b-9f5f-c90ce13d3011","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:50.291840817Z"}]},"request_id":"4e7b125f-2058-4dd1-a3be-4e6af78e5580","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931090.8782408} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"10a9a3ca35428415536af7419cc54083","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"10a9a3ca35428415536af7419cc54083"} gateway-1 | {"time_local":"21/Sep/2024:15:04:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"10a9a3ca35428415536af7419cc54083"} device-1 | {"level":"info","message":"GET /devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011? 200 13ms","method":"GET","requestID":"10a9a3ca35428415536af7419cc54083","responseTime":13,"status":200,"url":"/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MH0.kbFUgYu0LT_evzT8aVYGwEWJLtEOg7FzG5euHDi_RRQ","level":"info","message":"auth send jwt","requestID":"05ccd8c826739f485227e6717de77bd5"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"05ccd8c826739f485227e6717de77bd5","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"05ccd8c826739f485227e6717de77bd5"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":461,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":461,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.23161,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"05ccd8c826739f485227e6717de77bd5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931090,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MH0.kbFUgYu0LT_evzT8aVYGwEWJLtEOg7FzG5euHDi_RRQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"05ccd8c826739f485227e6717de77bd5","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/96379996-f86e-48f1-a5e6-eb9300a05905"},"level":"info","message":"Attempting to run experiment","requestID":"05ccd8c826739f485227e6717de77bd5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/96379996-f86e-48f1-a5e6-eb9300a05905"},"level":"info","message":"Attempting to book experiment","requestID":"05ccd8c826739f485227e6717de77bd5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/96379996-f86e-48f1-a5e6-eb9300a05905"},"level":"info","message":"Successfully booked experiment","requestID":"05ccd8c826739f485227e6717de77bd5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d9c65cb0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d9c6aad0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":462,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":462,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.102163,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:50Z"} authorization-1 | {"client_addr":"127.0.0.1:45256","level":"info","msg":"Received request.","req_id":463,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d9c65cb0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931090,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MH0.kbFUgYu0LT_evzT8aVYGwEWJLtEOg7FzG5euHDi_RRQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d9c65cb0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45256","level":"info","msg":"Sent response.","req_id":463,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.817793,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d9c6aad0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931090,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MH0.kbFUgYu0LT_evzT8aVYGwEWJLtEOg7FzG5euHDi_RRQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d9c6aad0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F24d8760c-94ed-4523-943e-230cdcd3ba47","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F24d8760c-94ed-4523-943e-230cdcd3ba47","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:50.222077325Z"}]},"request_id":"7776bd15-e5e3-4361-931e-004d8ddb93e0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931090.9556172} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"d9c65cb0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07d9eb82-ffa2-464b-9f5f-c90ce13d3011","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07d9eb82-ffa2-464b-9f5f-c90ce13d3011","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:50.291840817Z"}]},"request_id":"9cee72e2-2ca7-4a1b-b7ff-619c743d3efb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931090.957499} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d9c6aad0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d9c65cb0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/24d8760c-94ed-4523-943e-230cdcd3ba47? 200 25ms","method":"GET","requestID":"d9c65cb0-782a-11ef-88d4-5fea3f61bb98","responseTime":25,"status":200,"url":"/devices/24d8760c-94ed-4523-943e-230cdcd3ba47?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d9c6aad0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011? 200 25ms","method":"GET","requestID":"d9c6aad0-782a-11ef-88d4-5fea3f61bb98","responseTime":25,"status":200,"url":"/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/96379996-f86e-48f1-a5e6-eb9300a05905"},"level":"info","message":"Setting up experiment","requestID":"05ccd8c826739f485227e6717de77bd5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/96379996-f86e-48f1-a5e6-eb9300a05905"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"05ccd8c826739f485227e6717de77bd5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/96379996-f86e-48f1-a5e6-eb9300a05905"},"level":"info","message":"Successfully locked booking for experiment","requestID":"05ccd8c826739f485227e6717de77bd5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/96379996-f86e-48f1-a5e6-eb9300a05905"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"05ccd8c826739f485227e6717de77bd5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/96379996-f86e-48f1-a5e6-eb9300a05905"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"05ccd8c826739f485227e6717de77bd5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/96379996-f86e-48f1-a5e6-eb9300a05905"},"level":"info","message":"Attempting to update booking for experiment","requestID":"05ccd8c826739f485227e6717de77bd5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/96379996-f86e-48f1-a5e6-eb9300a05905"},"level":"info","message":"Successfully updated booking for experiment","requestID":"05ccd8c826739f485227e6717de77bd5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/96379996-f86e-48f1-a5e6-eb9300a05905"},"level":"info","message":"Successfully set up experiment","requestID":"05ccd8c826739f485227e6717de77bd5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d9d26aa0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d9d2b8c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d9d306e0-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/96379996-f86e-48f1-a5e6-eb9300a05905"},"level":"info","message":"Successfully running experiment","requestID":"05ccd8c826739f485227e6717de77bd5"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":464,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:51Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":464,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.110171,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d9d26aa0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931090,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MH0.kbFUgYu0LT_evzT8aVYGwEWJLtEOg7FzG5euHDi_RRQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d9d26aa0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45256","level":"info","msg":"Received request.","req_id":465,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:51Z"} authorization-1 | {"client_addr":"127.0.0.1:45256","level":"info","msg":"Sent response.","req_id":465,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.89431,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d9d2b8c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931090,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MH0.kbFUgYu0LT_evzT8aVYGwEWJLtEOg7FzG5euHDi_RRQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d9d2b8c0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":466,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:51Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F24d8760c-94ed-4523-943e-230cdcd3ba47","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5c781dda-f3b7-4a13-a647-82a67f725290","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931091.0298274} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":466,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.225369,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d9d306e0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"d9d306e0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07d9eb82-ffa2-464b-9f5f-c90ce13d3011","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07d9eb82-ffa2-464b-9f5f-c90ce13d3011","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:50.291840817Z"}]},"request_id":"f0686084-96dc-4370-9e2b-3c55cb1b58fd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931091.0331395} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d9d2b8c0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F24d8760c-94ed-4523-943e-230cdcd3ba47","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F24d8760c-94ed-4523-943e-230cdcd3ba47","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:50.222077325Z"}]},"request_id":"37b9fc22-f5c1-40ab-a84b-1eedf530cfa2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931091.0360901} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d9d26aa0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d9d306e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/24d8760c-94ed-4523-943e-230cdcd3ba47/signaling 200 18ms","method":"POST","requestID":"d9d306e0-782a-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/24d8760c-94ed-4523-943e-230cdcd3ba47/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d9d66240-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d9d2b8c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011? 200 27ms","method":"GET","requestID":"d9d2b8c0-782a-11ef-88d4-5fea3f61bb98","responseTime":27,"status":200,"url":"/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d9d26aa0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":467,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:51Z"} device-1 | {"level":"info","message":"GET /devices/24d8760c-94ed-4523-943e-230cdcd3ba47? 200 30ms","method":"GET","requestID":"d9d26aa0-782a-11ef-88d4-5fea3f61bb98","responseTime":30,"status":200,"url":"/devices/24d8760c-94ed-4523-943e-230cdcd3ba47?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07d9eb82-ffa2-464b-9f5f-c90ce13d3011","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a49f2ade-9276-488b-9617-c013184b6c40","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931091.0511255} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":467,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.845994,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:51Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d9d79ac0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d9d66240-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"d9d66240-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":468,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:51Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F24d8760c-94ed-4523-943e-230cdcd3ba47","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"58ebc4ff-03c3-4b32-9812-c7821be7e27d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931091.0593226} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d9d66240-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011/signaling 200 19ms","method":"POST","requestID":"d9d66240-782a-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":468,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.476006,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d9d79ac0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"d9d79ac0-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F96379996-f86e-48f1-a5e6-eb9300a05905#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F96379996-f86e-48f1-a5e6-eb9300a05905","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"23d887b5-6417-46ad-88c4-175c53065153","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931091.0639267} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"03430c6e-d11f-4eb2-89b9-60a05938bade","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931091.0646002} authorization-1 | {"level":"info","message":"POST /relations/update 200 38ms","method":"POST","requestID":"05ccd8c826739f485227e6717de77bd5","responseTime":38,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d9d79ac0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/24d8760c-94ed-4523-943e-230cdcd3ba47/signaling 200 16ms","method":"POST","requestID":"d9d79ac0-782a-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/24d8760c-94ed-4523-943e-230cdcd3ba47/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d9dacf10-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":469,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:51Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/96379996-f86e-48f1-a5e6-eb9300a05905","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"05ccd8c826739f485227e6717de77bd5"} experiment-1 | {"level":"info","message":"POST /experiments? 201 191ms","method":"POST","requestID":"05ccd8c826739f485227e6717de77bd5","responseTime":191,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"786","request_time":"0.195","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"05ccd8c826739f485227e6717de77bd5"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07d9eb82-ffa2-464b-9f5f-c90ce13d3011","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7b2df32e-bad5-46c5-9058-64df81c08846","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931091.0800014} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":469,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.587323,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d9dacf10-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d9dacf10-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d9dacf10-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011/signaling 200 13ms","method":"POST","requestID":"d9dacf10-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MX0.9bABRsXkC-HhH0WULQ08FN8YAfNN85kl5AzPUUiAIEg","level":"info","message":"auth send jwt","requestID":"80350f8d7b0207fbd39e080f104a908b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"80350f8d7b0207fbd39e080f104a908b","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/96379996-f86e-48f1-a5e6-eb9300a05905"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"05ccd8c826739f485227e6717de77bd5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"80350f8d7b0207fbd39e080f104a908b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d9dd4010-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d9dd6720-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":470,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:51Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":470,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.780303,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:51Z"} authorization-1 | {"client_addr":"127.0.0.1:45256","level":"info","msg":"Received request.","req_id":471,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"80350f8d7b0207fbd39e080f104a908b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931091,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MX0.9bABRsXkC-HhH0WULQ08FN8YAfNN85kl5AzPUUiAIEg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"80350f8d7b0207fbd39e080f104a908b","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45256","level":"info","msg":"Sent response.","req_id":471,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.690215,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:51Z"} authorization-1 | {"client_addr":"127.0.0.1:45272","level":"info","msg":"Received request.","req_id":472,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:51Z"} authorization-1 | {"client_addr":"127.0.0.1:45272","level":"info","msg":"Sent response.","req_id":472,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.168478,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d9dd4010-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931090,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MH0.kbFUgYu0LT_evzT8aVYGwEWJLtEOg7FzG5euHDi_RRQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d9dd4010-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d9dd6720-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931090,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MH0.kbFUgYu0LT_evzT8aVYGwEWJLtEOg7FzG5euHDi_RRQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d9dd6720-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F24d8760c-94ed-4523-943e-230cdcd3ba47","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F24d8760c-94ed-4523-943e-230cdcd3ba47","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:50.222077325Z"}]},"request_id":"64cb5de5-bb55-482b-a161-1ae3af541e9c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931091.0992446} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F24d8760c-94ed-4523-943e-230cdcd3ba47","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F24d8760c-94ed-4523-943e-230cdcd3ba47","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:50.222077325Z"}]},"request_id":"146e0b8c-7c71-46b7-a8e2-551d0d1bc07c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931091.1004648} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"80350f8d7b0207fbd39e080f104a908b","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07d9eb82-ffa2-464b-9f5f-c90ce13d3011","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07d9eb82-ffa2-464b-9f5f-c90ce13d3011","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:50.291840817Z"}]},"request_id":"f78f2532-07e5-4782-b109-0c766f170e90","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931091.101616} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d9dd4010-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d9dd6720-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"80350f8d7b0207fbd39e080f104a908b"} device-1 | {"level":"info","message":"GET /devices/24d8760c-94ed-4523-943e-230cdcd3ba47? 200 21ms","method":"GET","requestID":"80350f8d7b0207fbd39e080f104a908b","responseTime":21,"status":200,"url":"/devices/24d8760c-94ed-4523-943e-230cdcd3ba47?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/24d8760c-94ed-4523-943e-230cdcd3ba47? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"80350f8d7b0207fbd39e080f104a908b"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d9dd4010-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/24d8760c-94ed-4523-943e-230cdcd3ba47? 200 20ms","method":"GET","requestID":"d9dd4010-782a-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/24d8760c-94ed-4523-943e-230cdcd3ba47?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d9dd6720-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011? 200 21ms","method":"GET","requestID":"d9dd6720-782a-11ef-88d4-5fea3f61bb98","responseTime":21,"status":200,"url":"/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/96379996-f86e-48f1-a5e6-eb9300a05905"},"level":"info","message":"Building connection plan","requestID":"05ccd8c826739f485227e6717de77bd5"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"7b71af9b-3356-446c-aa0d-e8cecfd061ac"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"5569b842-8187-42ca-8ff2-29ce062d921b"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"c8697568-77f2-4e41-b60b-74c59df6c0ee"}]},"level":"info","message":"Built pairwise service configurations","requestID":"05ccd8c826739f485227e6717de77bd5"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"05ccd8c826739f485227e6717de77bd5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MX0.9bABRsXkC-HhH0WULQ08FN8YAfNN85kl5AzPUUiAIEg","level":"info","message":"auth send jwt","requestID":"1de4e72373ae398bef75ebef30633269"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1de4e72373ae398bef75ebef30633269","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"d9e110a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1de4e72373ae398bef75ebef30633269"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":473,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:51Z"} authorization-1 | {"client_addr":"127.0.0.1:45256","level":"info","msg":"Received request.","req_id":474,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:51Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":473,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.61804,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d9e110a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931090,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MH0.kbFUgYu0LT_evzT8aVYGwEWJLtEOg7FzG5euHDi_RRQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d9e110a0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45256","level":"info","msg":"Sent response.","req_id":474,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.242655,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1de4e72373ae398bef75ebef30633269","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931091,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5MX0.9bABRsXkC-HhH0WULQ08FN8YAfNN85kl5AzPUUiAIEg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1de4e72373ae398bef75ebef30633269","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07d9eb82-ffa2-464b-9f5f-c90ce13d3011","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07d9eb82-ffa2-464b-9f5f-c90ce13d3011","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:50.291840817Z"}]},"request_id":"04b6b378-ea0b-49d9-87d2-a74a4054195d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931091.1257725} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1de4e72373ae398bef75ebef30633269","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1de4e72373ae398bef75ebef30633269"} device-1 | {"level":"info","message":"GET /devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011? 200 14ms","method":"GET","requestID":"1de4e72373ae398bef75ebef30633269","responseTime":14,"status":200,"url":"/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1de4e72373ae398bef75ebef30633269"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"7431dc03-9ea3-4edb-a4cf-5cb6ed74d199","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931091.1312134} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a2794b14-3cad-461a-9300-030ea4910d39","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931091.1319685} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"d9e110a0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"d9e110a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"d9e110a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/932625ed-753f-436e-87c3-e9b3c0d675a2'","requestID":"d9e110a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/932625ed-753f-436e-87c3-e9b3c0d675a2'","requestID":"d9e110a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"d9e110a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 41ms","method":"POST","requestID":"d9e110a0-782a-11ef-88d4-5fea3f61bb98","responseTime":41,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"d9e110a0-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/96379996-f86e-48f1-a5e6-eb9300a05905"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"05ccd8c826739f485227e6717de77bd5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d9ed45a0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":475,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:51Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F24d8760c-94ed-4523-943e-230cdcd3ba47","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"92f677c4-bd12-4559-989d-843db836ae84","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931091.2002237} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":475,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.070405,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d9ed45a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d9ed45a0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d9ed45a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/24d8760c-94ed-4523-943e-230cdcd3ba47/signaling 200 13ms","method":"POST","requestID":"d9ed45a0-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/24d8760c-94ed-4523-943e-230cdcd3ba47/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d9ef8f90-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":476,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:51Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07d9eb82-ffa2-464b-9f5f-c90ce13d3011","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ea163863-c213-4a71-971a-6405021da482","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931091.2159016} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":476,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.952649,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d9ef8f90-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d9ef8f90-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d9ef8f90-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011/signaling 200 13ms","method":"POST","requestID":"d9ef8f90-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011/signaling"} device-1 | {"device":"07d9eb82-ffa2-464b-9f5f-c90ce13d3011","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"932625ed-753f-436e-87c3-e9b3c0d675a2","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"24d8760c-94ed-4523-943e-230cdcd3ba47","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"932625ed-753f-436e-87c3-e9b3c0d675a2","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"24d8760c-94ed-4523-943e-230cdcd3ba47","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"24d8760c-94ed-4523-943e-230cdcd3ba47","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"24d8760c-94ed-4523-943e-230cdcd3ba47","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"24d8760c-94ed-4523-943e-230cdcd3ba47","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/932625ed-753f-436e-87c3-e9b3c0d675a2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"932625ed-753f-436e-87c3-e9b3c0d675a2","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"39cc6a354b03682e429c95ae4ff245b1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"39cc6a354b03682e429c95ae4ff245b1","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/932625ed-753f-436e-87c3-e9b3c0d675a2"}}},"level":"info","message":"received a callback","requestID":"39cc6a354b03682e429c95ae4ff245b1"} device-1 | {"device":"07d9eb82-ffa2-464b-9f5f-c90ce13d3011","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"07d9eb82-ffa2-464b-9f5f-c90ce13d3011","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"07d9eb82-ffa2-464b-9f5f-c90ce13d3011","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"39cc6a354b03682e429c95ae4ff245b1","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch","requestID":"39cc6a354b03682e429c95ae4ff245b1"} device-1 | {"device":"24d8760c-94ed-4523-943e-230cdcd3ba47","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"932625ed-753f-436e-87c3-e9b3c0d675a2","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"07d9eb82-ffa2-464b-9f5f-c90ce13d3011","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"24d8760c-94ed-4523-943e-230cdcd3ba47","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"07d9eb82-ffa2-464b-9f5f-c90ce13d3011","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"932625ed-753f-436e-87c3-e9b3c0d675a2","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/932625ed-753f-436e-87c3-e9b3c0d675a2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"932625ed-753f-436e-87c3-e9b3c0d675a2","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6a6b5a11dc3bbd9e9f3ba75b58ea4b0b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6a6b5a11dc3bbd9e9f3ba75b58ea4b0b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/932625ed-753f-436e-87c3-e9b3c0d675a2"}}},"level":"info","message":"received a callback","requestID":"6a6b5a11dc3bbd9e9f3ba75b58ea4b0b"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"db2b1cd0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":477,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:53Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F932625ed-753f-436e-87c3-e9b3c0d675a2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c84b3fab-2a9e-40e8-8107-2d37088674b2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931093.2853456} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":477,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.533428,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/932625ed-753f-436e-87c3-e9b3c0d675a2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"db2b1cd0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/932625ed-753f-436e-87c3-e9b3c0d675a2","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"db2b1cd0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"db2b1cd0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/932625ed-753f-436e-87c3-e9b3c0d675a2 200 15ms","method":"GET","requestID":"db2b1cd0-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/peerconnections/932625ed-753f-436e-87c3-e9b3c0d675a2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 71ms","method":"POST","requestID":"6a6b5a11dc3bbd9e9f3ba75b58ea4b0b","responseTime":71,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.078","http_referrer":"","http_user_agent":"node-fetch","requestID":"6a6b5a11dc3bbd9e9f3ba75b58ea4b0b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"db344490-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":478,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:53Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F24d8760c-94ed-4523-943e-230cdcd3ba47","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f45f939c-f276-4952-9c17-885c150f1c18","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931093.3418727} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":478,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.250181,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"db344490-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"db344490-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"db344490-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/24d8760c-94ed-4523-943e-230cdcd3ba47/signaling 200 9ms","method":"POST","requestID":"db344490-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/24d8760c-94ed-4523-943e-230cdcd3ba47/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"db35f240-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":479,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:53Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07d9eb82-ffa2-464b-9f5f-c90ce13d3011","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a98e3220-f74c-460c-926b-d3eb85785f27","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931093.3521156} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":479,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.223239,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"db35f240-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"db35f240-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"db35f240-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011/signaling 200 8ms","method":"POST","requestID":"db35f240-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5M30.sjePgiOTeCqWtK4YHuT7iEtoCKBv33m7e8EUSDpPa38","level":"info","message":"auth send jwt","requestID":"986910b75d9c120f7f61ec3b55b0f3ca"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"986910b75d9c120f7f61ec3b55b0f3ca","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/96379996-f86e-48f1-a5e6-eb9300a05905","requestID":"986910b75d9c120f7f61ec3b55b0f3ca"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":480,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:53Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":480,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.380848,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/96379996-f86e-48f1-a5e6-eb9300a05905","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"986910b75d9c120f7f61ec3b55b0f3ca","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/96379996-f86e-48f1-a5e6-eb9300a05905","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931093,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5M30.sjePgiOTeCqWtK4YHuT7iEtoCKBv33m7e8EUSDpPa38"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"986910b75d9c120f7f61ec3b55b0f3ca","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/96379996-f86e-48f1-a5e6-eb9300a05905","requestID":"986910b75d9c120f7f61ec3b55b0f3ca"} gateway-1 | {"time_local":"21/Sep/2024:15:04:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/96379996-f86e-48f1-a5e6-eb9300a05905 HTTP/1.1","status": "200","body_bytes_sent":"859","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"986910b75d9c120f7f61ec3b55b0f3ca"} experiment-1 | {"level":"info","message":"GET /experiments/96379996-f86e-48f1-a5e6-eb9300a05905 200 16ms","method":"GET","requestID":"986910b75d9c120f7f61ec3b55b0f3ca","responseTime":16,"status":200,"url":"/experiments/96379996-f86e-48f1-a5e6-eb9300a05905"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5M30.sjePgiOTeCqWtK4YHuT7iEtoCKBv33m7e8EUSDpPa38","level":"info","message":"auth send jwt","requestID":"0716bbddd596cbaafc60f85f3b657f47"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0716bbddd596cbaafc60f85f3b657f47","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/96379996-f86e-48f1-a5e6-eb9300a05905","requestID":"0716bbddd596cbaafc60f85f3b657f47"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":481,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:53Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":481,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.224641,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:53Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/96379996-f86e-48f1-a5e6-eb9300a05905","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0716bbddd596cbaafc60f85f3b657f47","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/96379996-f86e-48f1-a5e6-eb9300a05905","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931093,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5M30.sjePgiOTeCqWtK4YHuT7iEtoCKBv33m7e8EUSDpPa38"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0716bbddd596cbaafc60f85f3b657f47","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/96379996-f86e-48f1-a5e6-eb9300a05905"},"level":"info","message":"Attempting to finish experiment","requestID":"0716bbddd596cbaafc60f85f3b657f47"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"db51b7a0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":482,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:53Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":482,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.915093,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:53Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/932625ed-753f-436e-87c3-e9b3c0d675a2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"db51b7a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/932625ed-753f-436e-87c3-e9b3c0d675a2","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931093,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5M30.sjePgiOTeCqWtK4YHuT7iEtoCKBv33m7e8EUSDpPa38"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"db51b7a0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"device":"24d8760c-94ed-4523-943e-230cdcd3ba47","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"24d8760c-94ed-4523-943e-230cdcd3ba47","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"24d8760c-94ed-4523-943e-230cdcd3ba47","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"07d9eb82-ffa2-464b-9f5f-c90ce13d3011","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"07d9eb82-ffa2-464b-9f5f-c90ce13d3011","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"07d9eb82-ffa2-464b-9f5f-c90ce13d3011","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/932625ed-753f-436e-87c3-e9b3c0d675a2' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/932625ed-753f-436e-87c3-e9b3c0d675a2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"932625ed-753f-436e-87c3-e9b3c0d675a2","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F932625ed-753f-436e-87c3-e9b3c0d675a2': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F932625ed-753f-436e-87c3-e9b3c0d675a2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"89d14386-68e5-4bfa-90f1-775eefe5f8cd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931093.555148} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4208a958-80ee-407c-8296-85e9d049f6d1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931093.5554972} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"db51b7a0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a6c509fea35fcf4dea294ab763d80d3d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a6c509fea35fcf4dea294ab763d80d3d","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/932625ed-753f-436e-87c3-e9b3c0d675a2"}}},"level":"info","message":"received a callback","requestID":"a6c509fea35fcf4dea294ab763d80d3d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cbba0ea6ba10b0ffd845b0e72b71903b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"db51b7a0-782a-11ef-88d4-5fea3f61bb98"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"cbba0ea6ba10b0ffd845b0e72b71903b","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"DELETE /peerconnections/932625ed-753f-436e-87c3-e9b3c0d675a2 204 30ms","method":"DELETE","requestID":"db51b7a0-782a-11ef-88d4-5fea3f61bb98","responseTime":30,"status":204,"url":"/peerconnections/932625ed-753f-436e-87c3-e9b3c0d675a2"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/932625ed-753f-436e-87c3-e9b3c0d675a2"}}},"level":"info","message":"received a callback","requestID":"cbba0ea6ba10b0ffd845b0e72b71903b"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/96379996-f86e-48f1-a5e6-eb9300a05905"},"level":"info","message":"Successfully finished experiment","requestID":"0716bbddd596cbaafc60f85f3b657f47"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"db59cdf0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":483,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:53Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F24d8760c-94ed-4523-943e-230cdcd3ba47","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"37d10c67-64ed-471a-bad7-1b048a285880","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931093.589935} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":483,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.30245,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"db59cdf0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"db59cdf0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"db59cdf0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/24d8760c-94ed-4523-943e-230cdcd3ba47/signaling 200 13ms","method":"POST","requestID":"db59cdf0-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/24d8760c-94ed-4523-943e-230cdcd3ba47/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F96379996-f86e-48f1-a5e6-eb9300a05905': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F96379996-f86e-48f1-a5e6-eb9300a05905","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"fd0c67e3-60e9-440f-8a72-e4df5f4b4495","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931093.5980513} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"986a4c6b-096f-448f-bc12-49a703d50c93","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931093.598327} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"db5c3ef0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"0716bbddd596cbaafc60f85f3b657f47","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":484,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:53Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07d9eb82-ffa2-464b-9f5f-c90ce13d3011","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4ebb923b-0bb6-4ad5-86f7-1c0d45740ae0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931093.605269} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":484,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.991603,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"db5c3ef0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"db5c3ef0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"db5c3ef0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011/signaling 200 11ms","method":"POST","requestID":"db5c3ef0-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/96379996-f86e-48f1-a5e6-eb9300a05905","requestID":"0716bbddd596cbaafc60f85f3b657f47"} gateway-1 | {"time_local":"21/Sep/2024:15:04:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/96379996-f86e-48f1-a5e6-eb9300a05905 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.174","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0716bbddd596cbaafc60f85f3b657f47"} gateway-1 | {"time_local":"21/Sep/2024:15:04:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2462","request_time":"2.850","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"356012344a531bf3fc04d9285d3ef757"} gateway-1 | {"time_local":"21/Sep/2024:15:04:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2462","request_time":"2.868","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"ad0e12a057291f00138d1d94623df8f0"} experiment-1 | {"level":"info","message":"DELETE /experiments/96379996-f86e-48f1-a5e6-eb9300a05905 204 170ms","method":"DELETE","requestID":"0716bbddd596cbaafc60f85f3b657f47","responseTime":170,"status":204,"url":"/experiments/96379996-f86e-48f1-a5e6-eb9300a05905"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"a6c509fea35fcf4dea294ab763d80d3d","responseTime":127,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.130","http_referrer":"","http_user_agent":"node-fetch","requestID":"a6c509fea35fcf4dea294ab763d80d3d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"cbba0ea6ba10b0ffd845b0e72b71903b","responseTime":123,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.132","http_referrer":"","http_user_agent":"node-fetch","requestID":"cbba0ea6ba10b0ffd845b0e72b71903b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5M30.sjePgiOTeCqWtK4YHuT7iEtoCKBv33m7e8EUSDpPa38","level":"info","message":"auth send jwt","requestID":"9c53d15833131c915407b4b868002162"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9c53d15833131c915407b4b868002162","responseTime":4,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/07d9eb82-ffa2-464b-9f5f-c90ce13d3011' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"9c53d15833131c915407b4b868002162"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":485,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:53Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":485,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.024217,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:53Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"9c53d15833131c915407b4b868002162","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931093,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5M30.sjePgiOTeCqWtK4YHuT7iEtoCKBv33m7e8EUSDpPa38"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9c53d15833131c915407b4b868002162","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/24d8760c-94ed-4523-943e-230cdcd3ba47' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffc363a0-3fef-463c-a19f-9f27aeb2638d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a2e18180-313d-4d42-b5ea-49cf4e6f034d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931093.7359726} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9c53d15833131c915407b4b868002162","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f2f62364-d4f5-4bb8-89ab-956bebe73859","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931093.7408292} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"9c53d15833131c915407b4b868002162","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffc363a0-3fef-463c-a19f-9f27aeb2638d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"6ffd30bf-44fe-45a6-b168-df2c109fa903","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931093.7507782} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"618899dd-9156-4c5c-8fbf-957302b87d70","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931093.7510476} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"9c53d15833131c915407b4b868002162","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffc363a0-3fef-463c-a19f-9f27aeb2638d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffc363a0-3fef-463c-a19f-9f27aeb2638d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:53.750750808Z"}]},"request_id":"33a00086-8dfc-4d63-9576-92f83faa9869","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931093.755493} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9c53d15833131c915407b4b868002162","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9c53d15833131c915407b4b868002162"} gateway-1 | {"time_local":"21/Sep/2024:15:04:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.074","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9c53d15833131c915407b4b868002162"} device-1 | {"level":"info","message":"POST /devices? 201 65ms","method":"POST","requestID":"9c53d15833131c915407b4b868002162","responseTime":65,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5M30.sjePgiOTeCqWtK4YHuT7iEtoCKBv33m7e8EUSDpPa38","level":"info","message":"auth send jwt","requestID":"b7cf9302c153d6bac2a0d71c5b17875c"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b7cf9302c153d6bac2a0d71c5b17875c","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b7cf9302c153d6bac2a0d71c5b17875c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":486,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:53Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":486,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.754262,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:53Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b7cf9302c153d6bac2a0d71c5b17875c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931093,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5M30.sjePgiOTeCqWtK4YHuT7iEtoCKBv33m7e8EUSDpPa38"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b7cf9302c153d6bac2a0d71c5b17875c","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47dc3be8-74a9-4e76-a861-a05658c93e5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3619c6ca-af49-4cf4-ac64-be751b9ae316","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931093.7792387} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b7cf9302c153d6bac2a0d71c5b17875c","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8e55b13c-17c8-458c-89d7-dc8e794f67f1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931093.7845755} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"b7cf9302c153d6bac2a0d71c5b17875c","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47dc3be8-74a9-4e76-a861-a05658c93e5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"6da3ff18-0ce6-472b-93cc-212c559286c1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931093.8204854} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bd03feca-ac9b-4c27-ac83-e29e4ee942c3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931093.8206234} authorization-1 | {"level":"info","message":"POST /relations/update 200 38ms","method":"POST","requestID":"b7cf9302c153d6bac2a0d71c5b17875c","responseTime":38,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47dc3be8-74a9-4e76-a861-a05658c93e5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47dc3be8-74a9-4e76-a861-a05658c93e5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:53.820445798Z"}]},"request_id":"55b6dc03-2192-4fd6-9064-383134621a1a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931093.825041} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b7cf9302c153d6bac2a0d71c5b17875c","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b7cf9302c153d6bac2a0d71c5b17875c"} gateway-1 | {"time_local":"21/Sep/2024:15:04:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.070","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b7cf9302c153d6bac2a0d71c5b17875c"} device-1 | {"level":"info","message":"POST /devices? 201 66ms","method":"POST","requestID":"b7cf9302c153d6bac2a0d71c5b17875c","responseTime":66,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"95283876a568a387db6963296cd6dab8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"95283876a568a387db6963296cd6dab8","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/47dc3be8-74a9-4e76-a861-a05658c93e5b/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"95283876a568a387db6963296cd6dab8"} device-1 | {"level":"info","message":"OPTIONS /devices/47dc3be8-74a9-4e76-a861-a05658c93e5b/websocket 200 1ms","method":"OPTIONS","requestID":"95283876a568a387db6963296cd6dab8","responseTime":1,"status":200,"url":"/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5NX0.SLbgaUCWBcGE9Rt7gnNUSZsF9x0seMmT-jK15rsj-UY","level":"info","message":"auth send jwt","requestID":"9376f932b92b5c8b6ef4fb589cb5395f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9376f932b92b5c8b6ef4fb589cb5395f","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9376f932b92b5c8b6ef4fb589cb5395f"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":487,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":487,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.287333,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"9376f932b92b5c8b6ef4fb589cb5395f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931095,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5NX0.SLbgaUCWBcGE9Rt7gnNUSZsF9x0seMmT-jK15rsj-UY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9376f932b92b5c8b6ef4fb589cb5395f","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a49777349328fb738865c023f7c14dc4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a49777349328fb738865c023f7c14dc4","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a49777349328fb738865c023f7c14dc4"} device-1 | {"level":"info","message":"OPTIONS /devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d/websocket 200 1ms","method":"OPTIONS","requestID":"a49777349328fb738865c023f7c14dc4","responseTime":1,"status":200,"url":"/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9376f932b92b5c8b6ef4fb589cb5395f"} gateway-1 | {"time_local":"21/Sep/2024:15:04:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/47dc3be8-74a9-4e76-a861-a05658c93e5b/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.033","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9376f932b92b5c8b6ef4fb589cb5395f"} device-1 | {"level":"info","message":"POST /devices/47dc3be8-74a9-4e76-a861-a05658c93e5b/websocket 200 26ms","method":"POST","requestID":"9376f932b92b5c8b6ef4fb589cb5395f","responseTime":26,"status":200,"url":"/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5NX0.SLbgaUCWBcGE9Rt7gnNUSZsF9x0seMmT-jK15rsj-UY","level":"info","message":"auth send jwt","requestID":"0c27ae576c40298eb8f022a7e5ebbcdd"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0c27ae576c40298eb8f022a7e5ebbcdd","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0c27ae576c40298eb8f022a7e5ebbcdd"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":488,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":488,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.957988,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0c27ae576c40298eb8f022a7e5ebbcdd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931095,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5NX0.SLbgaUCWBcGE9Rt7gnNUSZsF9x0seMmT-jK15rsj-UY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0c27ae576c40298eb8f022a7e5ebbcdd","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0c27ae576c40298eb8f022a7e5ebbcdd"} gateway-1 | {"time_local":"21/Sep/2024:15:04:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0c27ae576c40298eb8f022a7e5ebbcdd"} device-1 | {"level":"info","message":"POST /devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d/websocket 200 16ms","method":"POST","requestID":"0c27ae576c40298eb8f022a7e5ebbcdd","responseTime":16,"status":200,"url":"/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ec9b1c35dd4dec81e90a366b9986eff7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ec9b1c35dd4dec81e90a366b9986eff7","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/47dc3be8-74a9-4e76-a861-a05658c93e5b? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ec9b1c35dd4dec81e90a366b9986eff7"} device-1 | {"level":"info","message":"OPTIONS /devices/47dc3be8-74a9-4e76-a861-a05658c93e5b? 200 1ms","method":"OPTIONS","requestID":"ec9b1c35dd4dec81e90a366b9986eff7","responseTime":1,"status":200,"url":"/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5NX0.SLbgaUCWBcGE9Rt7gnNUSZsF9x0seMmT-jK15rsj-UY","level":"info","message":"auth send jwt","requestID":"9b8387440c9ed6c06e4deb6adbd2ebcf"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9b8387440c9ed6c06e4deb6adbd2ebcf","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"9b8387440c9ed6c06e4deb6adbd2ebcf"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"37eff7c9f42a22e9e91b0ce945ed7160","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":489,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:55Z"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"37eff7c9f42a22e9e91b0ce945ed7160","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":489,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.093899,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"9b8387440c9ed6c06e4deb6adbd2ebcf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931095,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5NX0.SLbgaUCWBcGE9Rt7gnNUSZsF9x0seMmT-jK15rsj-UY"} gateway-1 | {"time_local":"21/Sep/2024:15:04:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"37eff7c9f42a22e9e91b0ce945ed7160"} device-1 | {"level":"info","message":"OPTIONS /devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d? 200 1ms","method":"OPTIONS","requestID":"37eff7c9f42a22e9e91b0ce945ed7160","responseTime":1,"status":200,"url":"/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d?"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9b8387440c9ed6c06e4deb6adbd2ebcf","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5NX0.SLbgaUCWBcGE9Rt7gnNUSZsF9x0seMmT-jK15rsj-UY","level":"info","message":"auth send jwt","requestID":"4f038f2bfe045f1270e56351156d5f6e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4f038f2bfe045f1270e56351156d5f6e","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47dc3be8-74a9-4e76-a861-a05658c93e5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47dc3be8-74a9-4e76-a861-a05658c93e5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:53.820445798Z"}]},"request_id":"36de4ca7-5957-4d45-aee7-2954dd0f4cb2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931095.900774} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4f038f2bfe045f1270e56351156d5f6e"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9b8387440c9ed6c06e4deb6adbd2ebcf","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":490,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":490,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.14301,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"4f038f2bfe045f1270e56351156d5f6e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931095,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5NX0.SLbgaUCWBcGE9Rt7gnNUSZsF9x0seMmT-jK15rsj-UY"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"4f038f2bfe045f1270e56351156d5f6e","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9749e760-bf27-4211-bb3f-ae4cc05d102d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931095.909448} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"9b8387440c9ed6c06e4deb6adbd2ebcf","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47dc3be8-74a9-4e76-a861-a05658c93e5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47dc3be8-74a9-4e76-a861-a05658c93e5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:53.820445798Z"}]},"request_id":"ddccf969-215f-44a6-aa52-c859e7304062","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931095.9222891} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"9b8387440c9ed6c06e4deb6adbd2ebcf","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffc363a0-3fef-463c-a19f-9f27aeb2638d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffc363a0-3fef-463c-a19f-9f27aeb2638d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:53.750750808Z"}]},"request_id":"e51cac37-78bd-4016-b88c-bbd8cca72347","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931095.923855} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"9b8387440c9ed6c06e4deb6adbd2ebcf"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4f038f2bfe045f1270e56351156d5f6e","responseTime":3,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"21/Sep/2024:15:04:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/47dc3be8-74a9-4e76-a861-a05658c93e5b? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.045","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9b8387440c9ed6c06e4deb6adbd2ebcf"} device-1 | {"level":"info","message":"PATCH /devices/47dc3be8-74a9-4e76-a861-a05658c93e5b? 200 40ms","method":"PATCH","requestID":"9b8387440c9ed6c06e4deb6adbd2ebcf","responseTime":40,"status":200,"url":"/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"662b01d4-0bd0-4664-8b94-079ee11a5a9e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931095.9321103} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"4f038f2bfe045f1270e56351156d5f6e","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffc363a0-3fef-463c-a19f-9f27aeb2638d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffc363a0-3fef-463c-a19f-9f27aeb2638d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:53.750750808Z"}]},"request_id":"5a9a93c1-2837-4b10-be6b-0f2902a68340","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931095.953355} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4f038f2bfe045f1270e56351156d5f6e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4f038f2bfe045f1270e56351156d5f6e"} gateway-1 | {"time_local":"21/Sep/2024:15:04:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.061","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4f038f2bfe045f1270e56351156d5f6e"} device-1 | {"level":"info","message":"PATCH /devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d? 200 55ms","method":"PATCH","requestID":"4f038f2bfe045f1270e56351156d5f6e","responseTime":55,"status":200,"url":"/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5NX0.SLbgaUCWBcGE9Rt7gnNUSZsF9x0seMmT-jK15rsj-UY","level":"info","message":"auth send jwt","requestID":"15dd29f0830a470723959b007ab6be49"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"15dd29f0830a470723959b007ab6be49","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"15dd29f0830a470723959b007ab6be49"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":491,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":491,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.128471,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"15dd29f0830a470723959b007ab6be49","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931095,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5NX0.SLbgaUCWBcGE9Rt7gnNUSZsF9x0seMmT-jK15rsj-UY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"15dd29f0830a470723959b007ab6be49","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffc363a0-3fef-463c-a19f-9f27aeb2638d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffc363a0-3fef-463c-a19f-9f27aeb2638d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:53.750750808Z"}]},"request_id":"d6ed7c20-4594-4f62-acd4-9f5a8f32cb9c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931095.9808323} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"15dd29f0830a470723959b007ab6be49","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"15dd29f0830a470723959b007ab6be49"} gateway-1 | {"time_local":"21/Sep/2024:15:04:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"15dd29f0830a470723959b007ab6be49"} device-1 | {"level":"info","message":"GET /devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d? 200 14ms","method":"GET","requestID":"15dd29f0830a470723959b007ab6be49","responseTime":14,"status":200,"url":"/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5NX0.SLbgaUCWBcGE9Rt7gnNUSZsF9x0seMmT-jK15rsj-UY","level":"info","message":"auth send jwt","requestID":"c3d40ae9372ca03eb4f62035d4eb9752"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c3d40ae9372ca03eb4f62035d4eb9752","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c3d40ae9372ca03eb4f62035d4eb9752"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":492,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":492,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.843174,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c3d40ae9372ca03eb4f62035d4eb9752","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931095,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5NX0.SLbgaUCWBcGE9Rt7gnNUSZsF9x0seMmT-jK15rsj-UY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c3d40ae9372ca03eb4f62035d4eb9752","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47dc3be8-74a9-4e76-a861-a05658c93e5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47dc3be8-74a9-4e76-a861-a05658c93e5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:53.820445798Z"}]},"request_id":"32849ded-d2c6-462d-b36e-10dc50226968","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.0018535} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c3d40ae9372ca03eb4f62035d4eb9752","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c3d40ae9372ca03eb4f62035d4eb9752"} device-1 | {"level":"info","message":"GET /devices/47dc3be8-74a9-4e76-a861-a05658c93e5b? 200 13ms","method":"GET","requestID":"c3d40ae9372ca03eb4f62035d4eb9752","responseTime":13,"status":200,"url":"/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/47dc3be8-74a9-4e76-a861-a05658c93e5b? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c3d40ae9372ca03eb4f62035d4eb9752"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5Nn0.S6pdk14otm9jPuU9E_3r-vkvARSJPIOXI29troNcLxU","level":"info","message":"auth send jwt","requestID":"d82e0213d822bc5814b7a82abd506cc8"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d82e0213d822bc5814b7a82abd506cc8","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"d82e0213d822bc5814b7a82abd506cc8"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":493,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":493,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.326075,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d82e0213d822bc5814b7a82abd506cc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931096,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5Nn0.S6pdk14otm9jPuU9E_3r-vkvARSJPIOXI29troNcLxU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d82e0213d822bc5814b7a82abd506cc8","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49"},"level":"info","message":"Attempting to run experiment","requestID":"d82e0213d822bc5814b7a82abd506cc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49"},"level":"info","message":"Attempting to book experiment","requestID":"d82e0213d822bc5814b7a82abd506cc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49"},"level":"info","message":"Successfully booked experiment","requestID":"d82e0213d822bc5814b7a82abd506cc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dcd2d960-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dcd32780-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":494,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":494,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.257646,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dcd2d960-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931096,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5Nn0.S6pdk14otm9jPuU9E_3r-vkvARSJPIOXI29troNcLxU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"dcd2d960-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":495,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":495,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.940346,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dcd32780-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931096,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5Nn0.S6pdk14otm9jPuU9E_3r-vkvARSJPIOXI29troNcLxU"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"dcd32780-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffc363a0-3fef-463c-a19f-9f27aeb2638d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffc363a0-3fef-463c-a19f-9f27aeb2638d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:53.750750808Z"}]},"request_id":"c551ba3d-c10a-48a8-9553-275ba05fe7fa","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.067873} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"dcd2d960-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47dc3be8-74a9-4e76-a861-a05658c93e5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47dc3be8-74a9-4e76-a861-a05658c93e5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:53.820445798Z"}]},"request_id":"4eb9d1d1-c552-42a4-b418-b6a0dd6b782c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.0737963} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dcd2d960-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dcd32780-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d? 200 21ms","method":"GET","requestID":"dcd2d960-782a-11ef-88d4-5fea3f61bb98","responseTime":21,"status":200,"url":"/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dcd32780-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/47dc3be8-74a9-4e76-a861-a05658c93e5b? 200 23ms","method":"GET","requestID":"dcd32780-782a-11ef-88d4-5fea3f61bb98","responseTime":23,"status":200,"url":"/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49"},"level":"info","message":"Setting up experiment","requestID":"d82e0213d822bc5814b7a82abd506cc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"d82e0213d822bc5814b7a82abd506cc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49"},"level":"info","message":"Successfully locked booking for experiment","requestID":"d82e0213d822bc5814b7a82abd506cc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"d82e0213d822bc5814b7a82abd506cc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"d82e0213d822bc5814b7a82abd506cc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49"},"level":"info","message":"Attempting to update booking for experiment","requestID":"d82e0213d822bc5814b7a82abd506cc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49"},"level":"info","message":"Successfully updated booking for experiment","requestID":"d82e0213d822bc5814b7a82abd506cc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49"},"level":"info","message":"Successfully set up experiment","requestID":"d82e0213d822bc5814b7a82abd506cc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dcdf5c80-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dcdfaaa0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"dcdff8c0-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49"},"level":"info","message":"Successfully running experiment","requestID":"d82e0213d822bc5814b7a82abd506cc8"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":496,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":496,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.559211,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dcdf5c80-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931096,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5Nn0.S6pdk14otm9jPuU9E_3r-vkvARSJPIOXI29troNcLxU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"dcdf5c80-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":497,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":497,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.461792,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dcdfaaa0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931096,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5Nn0.S6pdk14otm9jPuU9E_3r-vkvARSJPIOXI29troNcLxU"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"dcdfaaa0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47dc3be8-74a9-4e76-a861-a05658c93e5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47dc3be8-74a9-4e76-a861-a05658c93e5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:53.820445798Z"}]},"request_id":"59e41517-6b0c-45bb-a4d1-1d722fc172f9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.1519945} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffc363a0-3fef-463c-a19f-9f27aeb2638d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffc363a0-3fef-463c-a19f-9f27aeb2638d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:53.750750808Z"}]},"request_id":"bd7c23f2-c47b-4f54-910e-1a2199f99df3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.1533647} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"dcdfaaa0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"dcdf5c80-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:56758","level":"info","msg":"Received request.","req_id":498,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffc363a0-3fef-463c-a19f-9f27aeb2638d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f25d7469-fd70-42d3-b919-21f3b7d9e5dc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.1574564} authorization-1 | {"client_addr":"127.0.0.1:56758","level":"info","msg":"Sent response.","req_id":498,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.079971,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dcdff8c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dcdfaaa0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /authorize 200 15ms","method":"POST","requestID":"dcdff8c0-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/47dc3be8-74a9-4e76-a861-a05658c93e5b? 200 23ms","method":"GET","requestID":"dcdfaaa0-782a-11ef-88d4-5fea3f61bb98","responseTime":23,"status":200,"url":"/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dcdf5c80-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d? 200 26ms","method":"GET","requestID":"dcdf5c80-782a-11ef-88d4-5fea3f61bb98","responseTime":26,"status":200,"url":"/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"dcdff8c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d/signaling 200 26ms","method":"POST","requestID":"dcdff8c0-782a-11ef-88d4-5fea3f61bb98","responseTime":26,"status":200,"url":"/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"dce41770-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F18f5aa61-dc2d-4322-b394-5f5f9464ed49#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F18f5aa61-dc2d-4322-b394-5f5f9464ed49","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"f3a8339b-a493-42f7-98dc-e2b0e624ee91","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.1679697} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e55ae774-e989-4e7f-8435-6971103b13ce","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.16868} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"dce48ca0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"d82e0213d822bc5814b7a82abd506cc8","responseTime":27,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":499,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":500,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffc363a0-3fef-463c-a19f-9f27aeb2638d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e8516efa-5fdf-414f-ae6f-cc0eac9e3ab7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.1759267} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":499,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.865163,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dce41770-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"dce41770-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47dc3be8-74a9-4e76-a861-a05658c93e5b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a8ae1dc6-bb29-4d79-915c-15028a6f2644","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.1793857} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":500,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.107685,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dce48ca0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"dce48ca0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"dce41770-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d/signaling 200 15ms","method":"POST","requestID":"dce41770-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"d82e0213d822bc5814b7a82abd506cc8"} experiment-1 | {"level":"info","message":"POST /experiments? 201 168ms","method":"POST","requestID":"d82e0213d822bc5814b7a82abd506cc8","responseTime":168,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"778","request_time":"0.175","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d82e0213d822bc5814b7a82abd506cc8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"dce724b0-782a-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5Nn0.S6pdk14otm9jPuU9E_3r-vkvARSJPIOXI29troNcLxU","level":"info","message":"auth send jwt","requestID":"a6d94ee13fea3a3844cc09379b698742"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"dce48ca0-782a-11ef-88d4-5fea3f61bb98"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a6d94ee13fea3a3844cc09379b698742","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":501,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:56Z"} device-1 | {"level":"info","message":"POST /devices/47dc3be8-74a9-4e76-a861-a05658c93e5b/signaling 200 19ms","method":"POST","requestID":"dce48ca0-782a-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a6d94ee13fea3a3844cc09379b698742"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47dc3be8-74a9-4e76-a861-a05658c93e5b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c03ced6a-ce31-412a-b98f-f145104d487a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.1924875} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":502,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":501,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.871189,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dce724b0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"dce724b0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":502,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.852624,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a6d94ee13fea3a3844cc09379b698742","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931096,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5Nn0.S6pdk14otm9jPuU9E_3r-vkvARSJPIOXI29troNcLxU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a6d94ee13fea3a3844cc09379b698742","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"dce724b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/47dc3be8-74a9-4e76-a861-a05658c93e5b/signaling 200 12ms","method":"POST","requestID":"dce724b0-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffc363a0-3fef-463c-a19f-9f27aeb2638d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffc363a0-3fef-463c-a19f-9f27aeb2638d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:53.750750808Z"}]},"request_id":"a9880fd1-06db-446d-8553-5706b813192e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.1992662} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"d82e0213d822bc5814b7a82abd506cc8"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a6d94ee13fea3a3844cc09379b698742","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dce96ea0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dce9bcc0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a6d94ee13fea3a3844cc09379b698742"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":503,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":504,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:56Z"} gateway-1 | {"time_local":"21/Sep/2024:15:04:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a6d94ee13fea3a3844cc09379b698742"} device-1 | {"level":"info","message":"GET /devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d? 200 18ms","method":"GET","requestID":"a6d94ee13fea3a3844cc09379b698742","responseTime":18,"status":200,"url":"/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":503,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.234194,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dce96ea0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931096,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5Nn0.S6pdk14otm9jPuU9E_3r-vkvARSJPIOXI29troNcLxU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"dce96ea0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":504,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.309638,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dce9bcc0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931096,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5Nn0.S6pdk14otm9jPuU9E_3r-vkvARSJPIOXI29troNcLxU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"dce9bcc0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5Nn0.S6pdk14otm9jPuU9E_3r-vkvARSJPIOXI29troNcLxU","level":"info","message":"auth send jwt","requestID":"1ac8f4639cbf7048366166932daf7dc8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffc363a0-3fef-463c-a19f-9f27aeb2638d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffc363a0-3fef-463c-a19f-9f27aeb2638d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:53.750750808Z"}]},"request_id":"55a4788f-3080-4af4-b6ee-c3dec07dbb87","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.2126305} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1ac8f4639cbf7048366166932daf7dc8","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dce96ea0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1ac8f4639cbf7048366166932daf7dc8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47dc3be8-74a9-4e76-a861-a05658c93e5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47dc3be8-74a9-4e76-a861-a05658c93e5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:53.820445798Z"}]},"request_id":"c74b6dde-7a4c-458d-b0eb-8cf79602793f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.2136588} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"dce9bcc0-782a-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":505,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":505,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.803749,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1ac8f4639cbf7048366166932daf7dc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931096,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5Nn0.S6pdk14otm9jPuU9E_3r-vkvARSJPIOXI29troNcLxU"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"1ac8f4639cbf7048366166932daf7dc8","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dce96ea0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d? 200 15ms","method":"GET","requestID":"dce96ea0-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dce9bcc0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/47dc3be8-74a9-4e76-a861-a05658c93e5b? 200 15ms","method":"GET","requestID":"dce9bcc0-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49"},"level":"info","message":"Building connection plan","requestID":"d82e0213d822bc5814b7a82abd506cc8"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"a4cf6e5a-b6aa-439f-8b5f-87a86843548e"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"5906408b-09cd-4dd0-9118-40f4d0b4569b"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"ba342bb1-0012-4396-a56e-ee03e034ccc1"}]},"level":"info","message":"Built pairwise service configurations","requestID":"d82e0213d822bc5814b7a82abd506cc8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47dc3be8-74a9-4e76-a861-a05658c93e5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47dc3be8-74a9-4e76-a861-a05658c93e5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:53.820445798Z"}]},"request_id":"b1e8f5d3-b57f-4813-94fa-daa45aad8e47","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.222148} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"dcec7be0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"dcec7be0-782a-11ef-938d-0b888d58857d"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1ac8f4639cbf7048366166932daf7dc8","responseTime":3,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"POST /rooms 201 2ms","method":"POST","requestID":"dcec7be0-782a-11ef-938d-0b888d58857d","responseTime":2,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75?id=8fae4f00-7a28-4724-8d83-f4cde66e8860","ws://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75?id=ec5dd1d8-45c6-4496-9987-11a009504b89"]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"d82e0213d822bc5814b7a82abd506cc8"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1ac8f4639cbf7048366166932daf7dc8"} device-1 | {"level":"info","message":"GET /devices/47dc3be8-74a9-4e76-a861-a05658c93e5b? 200 11ms","method":"GET","requestID":"1ac8f4639cbf7048366166932daf7dc8","responseTime":11,"status":200,"url":"/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/47dc3be8-74a9-4e76-a861-a05658c93e5b? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1ac8f4639cbf7048366166932daf7dc8"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"dced1820-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":506,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":506,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.889303,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dced1820-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931096,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5Nn0.S6pdk14otm9jPuU9E_3r-vkvARSJPIOXI29troNcLxU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"dced1820-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"eba6f1b1-b254-4580-b591-01b3fd089d67","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.2367446} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5da33f90-b93d-454e-9510-fb3642dcb647","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.236967} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"dced1820-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"dced1820-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"dced1820-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/2130f7ac-b976-4482-a12d-52636c34dcc5'","requestID":"dced1820-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/2130f7ac-b976-4482-a12d-52636c34dcc5'","requestID":"dced1820-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"dced1820-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 24ms","method":"POST","requestID":"dced1820-782a-11ef-88d4-5fea3f61bb98","responseTime":24,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"dced1820-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2130f7ac-b976-4482-a12d-52636c34dcc5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2130f7ac-b976-4482-a12d-52636c34dcc5","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"dcf29660-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ec5dd1d8-45c6-4496-9987-11a009504b89\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\"","requestID":"dcf29660-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"dcf29660-782a-11ef-938d-0b888d58857d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8027a5c013c4876225321023841cff05","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"dcf2bd70-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\"","requestID":"dcf2bd70-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"dcf2bd70-782a-11ef-938d-0b888d58857d"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8027a5c013c4876225321023841cff05","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/2130f7ac-b976-4482-a12d-52636c34dcc5"}}},"level":"info","message":"received a callback","requestID":"8027a5c013c4876225321023841cff05"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} device-1 | {"data":{"peerconnection":"2130f7ac-b976-4482-a12d-52636c34dcc5","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 17ms","method":"POST","requestID":"8027a5c013c4876225321023841cff05","responseTime":17,"status":200,"url":"/callbacks/experiment"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} gateway-1 | {"time_local":"21/Sep/2024:15:04:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch","requestID":"8027a5c013c4876225321023841cff05"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} device-1 | {"data":{"peerconnection":"2130f7ac-b976-4482-a12d-52636c34dcc5","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"d82e0213d822bc5814b7a82abd506cc8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"dcf8d7f0-782a-11ef-88d4-5fea3f61bb98"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":507,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:56Z"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2130f7ac-b976-4482-a12d-52636c34dcc5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2130f7ac-b976-4482-a12d-52636c34dcc5","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffc363a0-3fef-463c-a19f-9f27aeb2638d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a3c0e80f-cd6b-429e-a64d-2053cb9ee984","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.3084526} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":507,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.305315,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dcf8d7f0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"dcf8d7f0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"83fb2abdc6ea2c05b345eb9e17c03d48","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/2130f7ac-b976-4482-a12d-52636c34dcc5"}}},"level":"info","message":"received a callback","requestID":"83fb2abdc6ea2c05b345eb9e17c03d48"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"dcf8d7f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d/signaling 200 11ms","method":"POST","requestID":"dcf8d7f0-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"83fb2abdc6ea2c05b345eb9e17c03d48","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"dcfafad0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":508,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47dc3be8-74a9-4e76-a861-a05658c93e5b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d505ff0c-9ad3-4aff-b749-1401dfe81638","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.3223498} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":508,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.84568,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:56Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"dcfbe530-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dcfafad0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"dcfafad0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":509,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2130f7ac-b976-4482-a12d-52636c34dcc5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"72c97fdf-a320-49c4-b912-dcabbb0fc573","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.3283076} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"dcfafad0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/47dc3be8-74a9-4e76-a861-a05658c93e5b/signaling 200 13ms","method":"POST","requestID":"dcfafad0-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":509,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.270742,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2130f7ac-b976-4482-a12d-52636c34dcc5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dcfbe530-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/2130f7ac-b976-4482-a12d-52636c34dcc5","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"dcfbe530-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"dcfbe530-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/2130f7ac-b976-4482-a12d-52636c34dcc5 200 10ms","method":"GET","requestID":"dcfbe530-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/peerconnections/2130f7ac-b976-4482-a12d-52636c34dcc5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 32ms","method":"POST","requestID":"83fb2abdc6ea2c05b345eb9e17c03d48","responseTime":32,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.036","http_referrer":"","http_user_agent":"node-fetch","requestID":"83fb2abdc6ea2c05b345eb9e17c03d48"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"dcff67a0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":510,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47dc3be8-74a9-4e76-a861-a05658c93e5b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"823d564f-e1e0-47e6-8697-72a9380696ab","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.3509238} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":510,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.375523,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dcff67a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"dcff67a0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"dcff67a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/47dc3be8-74a9-4e76-a861-a05658c93e5b/signaling 200 9ms","method":"POST","requestID":"dcff67a0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"dd011550-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":511,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffc363a0-3fef-463c-a19f-9f27aeb2638d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1df1e3a6-9852-429c-b096-36376f795f5e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.3628268} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":511,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.636187,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dd011550-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"dd011550-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"dd011550-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d/signaling 200 10ms","method":"POST","requestID":"dd011550-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5Nn0.S6pdk14otm9jPuU9E_3r-vkvARSJPIOXI29troNcLxU","level":"info","message":"auth send jwt","requestID":"48a0e043be6f3e0a134fd65098d71fb8"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"48a0e043be6f3e0a134fd65098d71fb8","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49","requestID":"48a0e043be6f3e0a134fd65098d71fb8"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":512,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":512,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.425427,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"48a0e043be6f3e0a134fd65098d71fb8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931096,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5Nn0.S6pdk14otm9jPuU9E_3r-vkvARSJPIOXI29troNcLxU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"48a0e043be6f3e0a134fd65098d71fb8","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49","requestID":"48a0e043be6f3e0a134fd65098d71fb8"} gateway-1 | {"time_local":"21/Sep/2024:15:04:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49 HTTP/1.1","status": "200","body_bytes_sent":"851","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"48a0e043be6f3e0a134fd65098d71fb8"} experiment-1 | {"level":"info","message":"GET /experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49 200 16ms","method":"GET","requestID":"48a0e043be6f3e0a134fd65098d71fb8","responseTime":16,"status":200,"url":"/experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5Nn0.S6pdk14otm9jPuU9E_3r-vkvARSJPIOXI29troNcLxU","level":"info","message":"auth send jwt","requestID":"2f8bda131f09df584089fbbacddb388f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2f8bda131f09df584089fbbacddb388f","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49","requestID":"2f8bda131f09df584089fbbacddb388f"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":513,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":513,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.348628,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"2f8bda131f09df584089fbbacddb388f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931096,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5Nn0.S6pdk14otm9jPuU9E_3r-vkvARSJPIOXI29troNcLxU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2f8bda131f09df584089fbbacddb388f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49"},"level":"info","message":"Attempting to finish experiment","requestID":"2f8bda131f09df584089fbbacddb388f"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"dd432760-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":514,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":514,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.224753,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2130f7ac-b976-4482-a12d-52636c34dcc5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dd432760-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/2130f7ac-b976-4482-a12d-52636c34dcc5","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931096,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5Nn0.S6pdk14otm9jPuU9E_3r-vkvARSJPIOXI29troNcLxU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"dd432760-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:04:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/b1562417-6eb1-4232-a17a-3cc81579af75?id=8fae4f00-7a28-4724-8d83-f4cde66e8860 HTTP/1.1","status": "101","body_bytes_sent":"940749","request_time":"0.547","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d7b4ceb4ebc0e383abd70ca5be8252ae"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2130f7ac-b976-4482-a12d-52636c34dcc5","device":"ffc363a0-3fef-463c-a19f-9f27aeb2638d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2130f7ac-b976-4482-a12d-52636c34dcc5","device":"47dc3be8-74a9-4e76-a861-a05658c93e5b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"21/Sep/2024:15:04:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/b1562417-6eb1-4232-a17a-3cc81579af75?id=ec5dd1d8-45c6-4496-9987-11a009504b89 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.549","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1914d275f0b93762c6faa48affce03e1"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"8fae4f00-7a28-4724-8d83-f4cde66e8860\" from room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2130f7ac-b976-4482-a12d-52636c34dcc5' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/2130f7ac-b976-4482-a12d-52636c34dcc5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2130f7ac-b976-4482-a12d-52636c34dcc5","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"ec5dd1d8-45c6-4496-9987-11a009504b89\" in room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"ec5dd1d8-45c6-4496-9987-11a009504b89\" from room \"http://localhost/rooms/b1562417-6eb1-4232-a17a-3cc81579af75\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f6c1d163c13f9fd74d5881091f0af737","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f6c1d163c13f9fd74d5881091f0af737","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2130f7ac-b976-4482-a12d-52636c34dcc5': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2130f7ac-b976-4482-a12d-52636c34dcc5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"ed6615e5-e2d6-4865-a3b1-0e16ae97445b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.8139222} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/2130f7ac-b976-4482-a12d-52636c34dcc5"}}},"level":"info","message":"received a callback","requestID":"f6c1d163c13f9fd74d5881091f0af737"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d77a0c9574361dcd3328e04745bef31c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0a3e09e8-ca89-47ef-8be4-2a1497fb29fa","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.814386} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d77a0c9574361dcd3328e04745bef31c","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"dd432760-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/2130f7ac-b976-4482-a12d-52636c34dcc5"}}},"level":"info","message":"received a callback","requestID":"d77a0c9574361dcd3328e04745bef31c"} device-1 | {"data":{"peerconnection":"2130f7ac-b976-4482-a12d-52636c34dcc5","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"dd432760-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/2130f7ac-b976-4482-a12d-52636c34dcc5 204 47ms","method":"DELETE","requestID":"dd432760-782a-11ef-88d4-5fea3f61bb98","responseTime":47,"status":204,"url":"/peerconnections/2130f7ac-b976-4482-a12d-52636c34dcc5"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49"},"level":"info","message":"Successfully finished experiment","requestID":"2f8bda131f09df584089fbbacddb388f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"dd4d1270-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":515,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47dc3be8-74a9-4e76-a861-a05658c93e5b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"155ad8dd-969e-44b5-a22e-4a7e73db8f5c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.8606899} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":515,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.986332,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dd4d1270-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"dd4d1270-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"dd4d1270-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/47dc3be8-74a9-4e76-a861-a05658c93e5b/signaling 200 10ms","method":"POST","requestID":"dd4d1270-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F18f5aa61-dc2d-4322-b394-5f5f9464ed49': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F18f5aa61-dc2d-4322-b394-5f5f9464ed49","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"9d9b5b36-b0f3-43ba-bf65-db31322e509a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.8676298} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a7bd1104-a2f1-4c62-998e-6c191cf984ea","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.867969} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"dd4f0e40-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"2f8bda131f09df584089fbbacddb388f","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":516,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffc363a0-3fef-463c-a19f-9f27aeb2638d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dc68ac33-567b-48d6-affd-e98c7551f5c0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.8748813} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":516,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.108897,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dd4f0e40-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"dd4f0e40-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"dd4f0e40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d/signaling 200 12ms","method":"POST","requestID":"dd4f0e40-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49","requestID":"2f8bda131f09df584089fbbacddb388f"} gateway-1 | {"time_local":"21/Sep/2024:15:04:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.173","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2f8bda131f09df584089fbbacddb388f"} experiment-1 | {"level":"info","message":"DELETE /experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49 204 167ms","method":"DELETE","requestID":"2f8bda131f09df584089fbbacddb388f","responseTime":167,"status":204,"url":"/experiments/18f5aa61-dc2d-4322-b394-5f5f9464ed49"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 129ms","method":"POST","requestID":"f6c1d163c13f9fd74d5881091f0af737","responseTime":129,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.132","http_referrer":"","http_user_agent":"node-fetch","requestID":"f6c1d163c13f9fd74d5881091f0af737"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"d77a0c9574361dcd3328e04745bef31c","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"d77a0c9574361dcd3328e04745bef31c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5Nn0.S6pdk14otm9jPuU9E_3r-vkvARSJPIOXI29troNcLxU","level":"info","message":"auth send jwt","requestID":"e16a3fe2cac537d7e4a723758a7f7564"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e16a3fe2cac537d7e4a723758a7f7564","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e16a3fe2cac537d7e4a723758a7f7564"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":517,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":517,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.721115,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e16a3fe2cac537d7e4a723758a7f7564","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931096,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5Nn0.S6pdk14otm9jPuU9E_3r-vkvARSJPIOXI29troNcLxU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e16a3fe2cac537d7e4a723758a7f7564","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:04:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1437","request_time":"1.096","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5cf7f82f5872d138485440985ba16e79"} gateway-1 | {"time_local":"21/Sep/2024:15:04:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1438","request_time":"1.116","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4c1d12903a4518bd039b027595fceb0a"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/47dc3be8-74a9-4e76-a861-a05658c93e5b' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5769548-077f-467c-a774-c346bf4f479e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"fdcdd47f-2d6b-4965-b5e2-f8195f624927","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.9676738} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e16a3fe2cac537d7e4a723758a7f7564","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9ac86dcc-0be2-4420-bf61-4515ae857692","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.9719076} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e16a3fe2cac537d7e4a723758a7f7564","responseTime":3,"status":200,"url":"/relations/update"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/ffc363a0-3fef-463c-a19f-9f27aeb2638d' closed"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5769548-077f-467c-a774-c346bf4f479e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"0ffb0a5f-d8f7-47cd-b141-394f4facedbf","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.9810479} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ae3b8f9a-55c4-46fb-99e6-517c727f099a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.9813066} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"e16a3fe2cac537d7e4a723758a7f7564","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5769548-077f-467c-a774-c346bf4f479e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5769548-077f-467c-a774-c346bf4f479e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:56.981028317Z"}]},"request_id":"5f51d978-ede9-4d6a-9747-369b3a968cbb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931096.9847703} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e16a3fe2cac537d7e4a723758a7f7564","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e16a3fe2cac537d7e4a723758a7f7564"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"e16a3fe2cac537d7e4a723758a7f7564","responseTime":39,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e16a3fe2cac537d7e4a723758a7f7564"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5Nn0.S6pdk14otm9jPuU9E_3r-vkvARSJPIOXI29troNcLxU","level":"info","message":"auth send jwt","requestID":"024c8d33506148744be419a36ce860df"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"024c8d33506148744be419a36ce860df","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"024c8d33506148744be419a36ce860df"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":518,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":518,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.690126,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:56Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"024c8d33506148744be419a36ce860df","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931096,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5Nn0.S6pdk14otm9jPuU9E_3r-vkvARSJPIOXI29troNcLxU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"024c8d33506148744be419a36ce860df","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa82b2964-324e-486e-be33-d289becbdb9c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6b140796-0844-447c-a06e-5ab1727821c2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931097.0108745} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"024c8d33506148744be419a36ce860df","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"412a15b0-05db-41d8-a1e7-11fde036ac85","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931097.0144968} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"024c8d33506148744be419a36ce860df","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa82b2964-324e-486e-be33-d289becbdb9c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"3e6f8405-1940-4c77-b749-fe7a686f07f5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931097.0251718} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e4400ddb-595e-45d9-9c2e-591870b9b35d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931097.0253537} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"024c8d33506148744be419a36ce860df","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa82b2964-324e-486e-be33-d289becbdb9c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa82b2964-324e-486e-be33-d289becbdb9c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:57.025152997Z"}]},"request_id":"3da0b461-729d-414e-a5d5-248ae0a1edac","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931097.0286195} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"024c8d33506148744be419a36ce860df","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"024c8d33506148744be419a36ce860df"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"024c8d33506148744be419a36ce860df","responseTime":39,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"024c8d33506148744be419a36ce860df"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5N30.Q0yVXSXzlnXWwh_4xvbmcyNHr8A-pvwmNxQ7hhhAMXo","level":"info","message":"auth send jwt","requestID":"64fbafcc696095c63ad58db4818d5e5f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"64fbafcc696095c63ad58db4818d5e5f","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"64fbafcc696095c63ad58db4818d5e5f"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":519,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:57Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":519,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.76185,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"64fbafcc696095c63ad58db4818d5e5f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931097,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5N30.Q0yVXSXzlnXWwh_4xvbmcyNHr8A-pvwmNxQ7hhhAMXo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"64fbafcc696095c63ad58db4818d5e5f","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa82b2964-324e-486e-be33-d289becbdb9c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa82b2964-324e-486e-be33-d289becbdb9c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:57.025152997Z"}]},"request_id":"1503853a-9b40-4d1e-bd5e-6d1d2a978ca5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931097.5110471} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"64fbafcc696095c63ad58db4818d5e5f","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fcde33ea-dcdd-4adb-b0eb-271f4861ba90","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931097.5183566} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"64fbafcc696095c63ad58db4818d5e5f","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa82b2964-324e-486e-be33-d289becbdb9c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa82b2964-324e-486e-be33-d289becbdb9c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:57.025152997Z"}]},"request_id":"d2bc4ee5-eb8e-4dbe-a04e-85aaba41cab6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931097.5316975} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"64fbafcc696095c63ad58db4818d5e5f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"64fbafcc696095c63ad58db4818d5e5f"} gateway-1 | {"time_local":"21/Sep/2024:15:04:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a82b2964-324e-486e-be33-d289becbdb9c HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"64fbafcc696095c63ad58db4818d5e5f"} device-1 | {"level":"info","message":"PATCH /devices/a82b2964-324e-486e-be33-d289becbdb9c 200 35ms","method":"PATCH","requestID":"64fbafcc696095c63ad58db4818d5e5f","responseTime":35,"status":200,"url":"/devices/a82b2964-324e-486e-be33-d289becbdb9c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5N30.Q0yVXSXzlnXWwh_4xvbmcyNHr8A-pvwmNxQ7hhhAMXo","level":"info","message":"auth send jwt","requestID":"c513945a1b2ef61372e56d3f58caf72d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c513945a1b2ef61372e56d3f58caf72d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c513945a1b2ef61372e56d3f58caf72d"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":520,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:57Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":520,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.308531,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c513945a1b2ef61372e56d3f58caf72d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931097,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5N30.Q0yVXSXzlnXWwh_4xvbmcyNHr8A-pvwmNxQ7hhhAMXo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c513945a1b2ef61372e56d3f58caf72d","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c513945a1b2ef61372e56d3f58caf72d"} gateway-1 | {"time_local":"21/Sep/2024:15:04:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a82b2964-324e-486e-be33-d289becbdb9c/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c513945a1b2ef61372e56d3f58caf72d"} device-1 | {"level":"info","message":"POST /devices/a82b2964-324e-486e-be33-d289becbdb9c/websocket 200 22ms","method":"POST","requestID":"c513945a1b2ef61372e56d3f58caf72d","responseTime":22,"status":200,"url":"/devices/a82b2964-324e-486e-be33-d289becbdb9c/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"af45998aaf2088ae6dec0d7bb6a0edea","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"af45998aaf2088ae6dec0d7bb6a0edea","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f5769548-077f-467c-a774-c346bf4f479e/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"af45998aaf2088ae6dec0d7bb6a0edea"} device-1 | {"level":"info","message":"OPTIONS /devices/f5769548-077f-467c-a774-c346bf4f479e/websocket 200 1ms","method":"OPTIONS","requestID":"af45998aaf2088ae6dec0d7bb6a0edea","responseTime":1,"status":200,"url":"/devices/f5769548-077f-467c-a774-c346bf4f479e/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is","level":"info","message":"auth send jwt","requestID":"fb56d10a6c3e17de66d572e29d826bf4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fb56d10a6c3e17de66d572e29d826bf4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"fb56d10a6c3e17de66d572e29d826bf4"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":521,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":521,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.316843,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fb56d10a6c3e17de66d572e29d826bf4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931099,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fb56d10a6c3e17de66d572e29d826bf4","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"fb56d10a6c3e17de66d572e29d826bf4"} gateway-1 | {"time_local":"21/Sep/2024:15:04:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f5769548-077f-467c-a774-c346bf4f479e/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"fb56d10a6c3e17de66d572e29d826bf4"} device-1 | {"level":"info","message":"POST /devices/f5769548-077f-467c-a774-c346bf4f479e/websocket 200 22ms","method":"POST","requestID":"fb56d10a6c3e17de66d572e29d826bf4","responseTime":22,"status":200,"url":"/devices/f5769548-077f-467c-a774-c346bf4f479e/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"58abca02f4db5a788ad41c12b3b9645f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"58abca02f4db5a788ad41c12b3b9645f","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:04:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f5769548-077f-467c-a774-c346bf4f479e? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"58abca02f4db5a788ad41c12b3b9645f"} device-1 | {"level":"info","message":"OPTIONS /devices/f5769548-077f-467c-a774-c346bf4f479e? 200 1ms","method":"OPTIONS","requestID":"58abca02f4db5a788ad41c12b3b9645f","responseTime":1,"status":200,"url":"/devices/f5769548-077f-467c-a774-c346bf4f479e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is","level":"info","message":"auth send jwt","requestID":"8855cda244c2af0f5f027e46140bd6ef"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8855cda244c2af0f5f027e46140bd6ef","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"8855cda244c2af0f5f027e46140bd6ef"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":522,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":522,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.18687,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"8855cda244c2af0f5f027e46140bd6ef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931099,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8855cda244c2af0f5f027e46140bd6ef","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5769548-077f-467c-a774-c346bf4f479e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5769548-077f-467c-a774-c346bf4f479e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:56.981028317Z"}]},"request_id":"c0721cbf-c84b-4f09-8a88-1ef55c412682","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.1397276} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8855cda244c2af0f5f027e46140bd6ef","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7c03b1bb-164b-4ab2-b4d0-2df539bc4e89","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.1471794} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"8855cda244c2af0f5f027e46140bd6ef","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5769548-077f-467c-a774-c346bf4f479e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5769548-077f-467c-a774-c346bf4f479e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:56.981028317Z"}]},"request_id":"38356cab-d849-4061-a827-29c279344eaf","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.1598716} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8855cda244c2af0f5f027e46140bd6ef","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"8855cda244c2af0f5f027e46140bd6ef"} gateway-1 | {"time_local":"21/Sep/2024:15:04:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f5769548-077f-467c-a774-c346bf4f479e? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.044","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"8855cda244c2af0f5f027e46140bd6ef"} device-1 | {"level":"info","message":"PATCH /devices/f5769548-077f-467c-a774-c346bf4f479e? 200 38ms","method":"PATCH","requestID":"8855cda244c2af0f5f027e46140bd6ef","responseTime":38,"status":200,"url":"/devices/f5769548-077f-467c-a774-c346bf4f479e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is","level":"info","message":"auth send jwt","requestID":"45c729e223a38fdf0b99a35fe6549211"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"45c729e223a38fdf0b99a35fe6549211","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"45c729e223a38fdf0b99a35fe6549211"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":523,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":523,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.185483,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"45c729e223a38fdf0b99a35fe6549211","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931099,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"45c729e223a38fdf0b99a35fe6549211","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5769548-077f-467c-a774-c346bf4f479e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5769548-077f-467c-a774-c346bf4f479e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:56.981028317Z"}]},"request_id":"f81c4cdd-c8f1-43ca-a9a3-d6f20b0d0a3d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.190248} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"45c729e223a38fdf0b99a35fe6549211","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"45c729e223a38fdf0b99a35fe6549211"} gateway-1 | {"time_local":"21/Sep/2024:15:04:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f5769548-077f-467c-a774-c346bf4f479e? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"45c729e223a38fdf0b99a35fe6549211"} device-1 | {"level":"info","message":"GET /devices/f5769548-077f-467c-a774-c346bf4f479e? 200 17ms","method":"GET","requestID":"45c729e223a38fdf0b99a35fe6549211","responseTime":17,"status":200,"url":"/devices/f5769548-077f-467c-a774-c346bf4f479e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is","level":"info","message":"auth send jwt","requestID":"525e33ba3b9468f860154cca52ff769d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"525e33ba3b9468f860154cca52ff769d","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"525e33ba3b9468f860154cca52ff769d"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":524,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":524,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.094968,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"525e33ba3b9468f860154cca52ff769d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931099,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"525e33ba3b9468f860154cca52ff769d","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa82b2964-324e-486e-be33-d289becbdb9c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa82b2964-324e-486e-be33-d289becbdb9c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:57.025152997Z"}]},"request_id":"f2b4d6da-0ba5-4dec-9126-f72d5306d9bc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.2174773} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"525e33ba3b9468f860154cca52ff769d","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"525e33ba3b9468f860154cca52ff769d"} device-1 | {"level":"info","message":"GET /devices/a82b2964-324e-486e-be33-d289becbdb9c? 200 20ms","method":"GET","requestID":"525e33ba3b9468f860154cca52ff769d","responseTime":20,"status":200,"url":"/devices/a82b2964-324e-486e-be33-d289becbdb9c?"} gateway-1 | {"time_local":"21/Sep/2024:15:04:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a82b2964-324e-486e-be33-d289becbdb9c? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"525e33ba3b9468f860154cca52ff769d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is","level":"info","message":"auth send jwt","requestID":"9fd99517e8f0d16d34b0c67d63fccc0c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9fd99517e8f0d16d34b0c67d63fccc0c","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"9fd99517e8f0d16d34b0c67d63fccc0c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":525,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":525,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.178863,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"9fd99517e8f0d16d34b0c67d63fccc0c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931099,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9fd99517e8f0d16d34b0c67d63fccc0c","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ad653cf-9b83-435d-b591-0826b77b38e9"},"level":"info","message":"Attempting to run experiment","requestID":"9fd99517e8f0d16d34b0c67d63fccc0c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ad653cf-9b83-435d-b591-0826b77b38e9"},"level":"info","message":"Attempting to book experiment","requestID":"9fd99517e8f0d16d34b0c67d63fccc0c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ad653cf-9b83-435d-b591-0826b77b38e9"},"level":"info","message":"Successfully booked experiment","requestID":"9fd99517e8f0d16d34b0c67d63fccc0c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"debdb970-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"debde080-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":526,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":527,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":526,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.910831,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":527,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.772638,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"debdb970-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931099,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"debdb970-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"debde080-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931099,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"debde080-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5769548-077f-467c-a774-c346bf4f479e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5769548-077f-467c-a774-c346bf4f479e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:56.981028317Z"}]},"request_id":"fa33eedd-1713-4d5a-8105-5e1ad03da710","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.284965} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"debdb970-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa82b2964-324e-486e-be33-d289becbdb9c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa82b2964-324e-486e-be33-d289becbdb9c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:57.025152997Z"}]},"request_id":"12b806e1-9d7c-445b-a1da-7659e64fca9b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.2875817} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"debde080-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"debdb970-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/f5769548-077f-467c-a774-c346bf4f479e? 200 23ms","method":"GET","requestID":"debdb970-782a-11ef-88d4-5fea3f61bb98","responseTime":23,"status":200,"url":"/devices/f5769548-077f-467c-a774-c346bf4f479e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"debde080-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/a82b2964-324e-486e-be33-d289becbdb9c? 200 24ms","method":"GET","requestID":"debde080-782a-11ef-88d4-5fea3f61bb98","responseTime":24,"status":200,"url":"/devices/a82b2964-324e-486e-be33-d289becbdb9c?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ad653cf-9b83-435d-b591-0826b77b38e9"},"level":"info","message":"Setting up experiment","requestID":"9fd99517e8f0d16d34b0c67d63fccc0c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ad653cf-9b83-435d-b591-0826b77b38e9"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"9fd99517e8f0d16d34b0c67d63fccc0c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ad653cf-9b83-435d-b591-0826b77b38e9"},"level":"info","message":"Successfully locked booking for experiment","requestID":"9fd99517e8f0d16d34b0c67d63fccc0c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ad653cf-9b83-435d-b591-0826b77b38e9"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"9fd99517e8f0d16d34b0c67d63fccc0c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ad653cf-9b83-435d-b591-0826b77b38e9"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"9fd99517e8f0d16d34b0c67d63fccc0c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ad653cf-9b83-435d-b591-0826b77b38e9"},"level":"info","message":"Attempting to update booking for experiment","requestID":"9fd99517e8f0d16d34b0c67d63fccc0c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ad653cf-9b83-435d-b591-0826b77b38e9"},"level":"info","message":"Successfully updated booking for experiment","requestID":"9fd99517e8f0d16d34b0c67d63fccc0c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ad653cf-9b83-435d-b591-0826b77b38e9"},"level":"info","message":"Successfully set up experiment","requestID":"9fd99517e8f0d16d34b0c67d63fccc0c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dec9c760-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"deca1580-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"deca8ab0-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ad653cf-9b83-435d-b591-0826b77b38e9"},"level":"info","message":"Successfully running experiment","requestID":"9fd99517e8f0d16d34b0c67d63fccc0c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":528,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":528,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.958584,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":529,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dec9c760-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931099,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"dec9c760-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":529,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.253961,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"client_addr":"127.0.0.1:56758","level":"info","msg":"Received request.","req_id":530,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"deca1580-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931099,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"deca1580-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56758","level":"info","msg":"Sent response.","req_id":530,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.031769,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5769548-077f-467c-a774-c346bf4f479e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"69da7297-55fe-49f2-bfc1-6827d5a58452","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.3683088} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"deca8ab0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"deca8ab0-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5769548-077f-467c-a774-c346bf4f479e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5769548-077f-467c-a774-c346bf4f479e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:56.981028317Z"}]},"request_id":"bb0c714e-2cae-41a8-a25f-3976e9f511bd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.371031} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa82b2964-324e-486e-be33-d289becbdb9c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa82b2964-324e-486e-be33-d289becbdb9c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:57.025152997Z"}]},"request_id":"66c17e0a-00b4-4847-bd83-516f775d5207","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.3738592} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"dec9c760-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"deca1580-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"deca8ab0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/f5769548-077f-467c-a774-c346bf4f479e/signaling 200 24ms","method":"POST","requestID":"deca8ab0-782a-11ef-88d4-5fea3f61bb98","responseTime":24,"status":200,"url":"/devices/f5769548-077f-467c-a774-c346bf4f479e/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dec9c760-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/f5769548-077f-467c-a774-c346bf4f479e? 200 34ms","method":"GET","requestID":"dec9c760-782a-11ef-88d4-5fea3f61bb98","responseTime":34,"status":200,"url":"/devices/f5769548-077f-467c-a774-c346bf4f479e?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"decef780-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"deca1580-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/a82b2964-324e-486e-be33-d289becbdb9c? 200 35ms","method":"GET","requestID":"deca1580-782a-11ef-88d4-5fea3f61bb98","responseTime":35,"status":200,"url":"/devices/a82b2964-324e-486e-be33-d289becbdb9c?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5ad653cf-9b83-435d-b591-0826b77b38e9#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5ad653cf-9b83-435d-b591-0826b77b38e9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"92c98d62-db55-4a37-abc0-689e7a61b8e2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.3867548} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ee27eb32-564d-47a7-b017-a6a2e9e6a362","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.3870904} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":531,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"9fd99517e8f0d16d34b0c67d63fccc0c","responseTime":27,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa82b2964-324e-486e-be33-d289becbdb9c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d2e90415-f262-48b8-8aec-d3c939d88ef1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.3906367} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":531,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.630921,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"decef780-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"decef780-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ded0a530-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"decef780-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a82b2964-324e-486e-be33-d289becbdb9c/signaling 200 15ms","method":"POST","requestID":"decef780-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/a82b2964-324e-486e-be33-d289becbdb9c/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":532,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/5ad653cf-9b83-435d-b591-0826b77b38e9","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"9fd99517e8f0d16d34b0c67d63fccc0c"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5769548-077f-467c-a774-c346bf4f479e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a7cb60a5-400c-46f9-80e8-fd30c578d652","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.402748} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":532,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.127688,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} gateway-1 | {"time_local":"21/Sep/2024:15:04:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"782","request_time":"0.179","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9fd99517e8f0d16d34b0c67d63fccc0c"} experiment-1 | {"level":"info","message":"POST /experiments? 201 172ms","method":"POST","requestID":"9fd99517e8f0d16d34b0c67d63fccc0c","responseTime":172,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ded0a530-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"ded0a530-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ded0a530-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/f5769548-077f-467c-a774-c346bf4f479e/signaling 200 14ms","method":"POST","requestID":"ded0a530-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/f5769548-077f-467c-a774-c346bf4f479e/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is","level":"info","message":"auth send jwt","requestID":"a9fea996398a70cda063ce8d666c337a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a9fea996398a70cda063ce8d666c337a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a9fea996398a70cda063ce8d666c337a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ded36450-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":533,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":533,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.768751,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":534,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a9fea996398a70cda063ce8d666c337a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931099,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a9fea996398a70cda063ce8d666c337a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa82b2964-324e-486e-be33-d289becbdb9c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0468a38a-6c4f-45bd-8821-34630f7444d0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.4176953} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":534,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.442863,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ded36450-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ded36450-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5769548-077f-467c-a774-c346bf4f479e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5769548-077f-467c-a774-c346bf4f479e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:56.981028317Z"}]},"request_id":"298b8995-671b-4d0a-825a-ad00709656de","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.4205458} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a9fea996398a70cda063ce8d666c337a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ded36450-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a82b2964-324e-486e-be33-d289becbdb9c/signaling 200 13ms","method":"POST","requestID":"ded36450-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/a82b2964-324e-486e-be33-d289becbdb9c/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a9fea996398a70cda063ce8d666c337a"} gateway-1 | {"time_local":"21/Sep/2024:15:04:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f5769548-077f-467c-a774-c346bf4f479e? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a9fea996398a70cda063ce8d666c337a"} device-1 | {"level":"info","message":"GET /devices/f5769548-077f-467c-a774-c346bf4f479e? 200 16ms","method":"GET","requestID":"a9fea996398a70cda063ce8d666c337a","responseTime":16,"status":200,"url":"/devices/f5769548-077f-467c-a774-c346bf4f479e?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ad653cf-9b83-435d-b591-0826b77b38e9"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"9fd99517e8f0d16d34b0c67d63fccc0c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ded5d550-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ded5fc60-782a-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is","level":"info","message":"auth send jwt","requestID":"7b9ec4b833ececed311766a2f7ff0ea6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7b9ec4b833ececed311766a2f7ff0ea6","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":535,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":535,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.942695,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ded5d550-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931099,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ded5d550-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7b9ec4b833ececed311766a2f7ff0ea6"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":536,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":536,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.921019,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ded5fc60-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931099,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ded5fc60-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":537,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":537,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.135486,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"7b9ec4b833ececed311766a2f7ff0ea6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931099,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7b9ec4b833ececed311766a2f7ff0ea6","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5769548-077f-467c-a774-c346bf4f479e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5769548-077f-467c-a774-c346bf4f479e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:56.981028317Z"}]},"request_id":"696c1e8b-0bea-45bb-b2b5-2b22a4e4a486","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.4411843} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa82b2964-324e-486e-be33-d289becbdb9c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa82b2964-324e-486e-be33-d289becbdb9c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:57.025152997Z"}]},"request_id":"bca79055-6225-4442-826f-55702b8c1167","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.4428916} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"ded5d550-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ded5fc60-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa82b2964-324e-486e-be33-d289becbdb9c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa82b2964-324e-486e-be33-d289becbdb9c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:57.025152997Z"}]},"request_id":"67199606-260b-4e91-903d-e7fcf3034f96","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.4477346} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7b9ec4b833ececed311766a2f7ff0ea6","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ded5d550-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/f5769548-077f-467c-a774-c346bf4f479e? 200 22ms","method":"GET","requestID":"ded5d550-782a-11ef-88d4-5fea3f61bb98","responseTime":22,"status":200,"url":"/devices/f5769548-077f-467c-a774-c346bf4f479e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ded5fc60-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/a82b2964-324e-486e-be33-d289becbdb9c? 200 22ms","method":"GET","requestID":"ded5fc60-782a-11ef-88d4-5fea3f61bb98","responseTime":22,"status":200,"url":"/devices/a82b2964-324e-486e-be33-d289becbdb9c?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ad653cf-9b83-435d-b591-0826b77b38e9"},"level":"info","message":"Building connection plan","requestID":"9fd99517e8f0d16d34b0c67d63fccc0c"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"251c1c7f-3384-4c4a-bcdc-99aad1b2b6ec"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"02f86f88-de96-48a5-9856-75c0d601d5cc"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"6ef6c211-7f8f-4912-9ea3-a4ab561a6cb2"}]},"level":"info","message":"Built pairwise service configurations","requestID":"9fd99517e8f0d16d34b0c67d63fccc0c"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7b9ec4b833ececed311766a2f7ff0ea6"} gateway-1 | {"time_local":"21/Sep/2024:15:04:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a82b2964-324e-486e-be33-d289becbdb9c? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7b9ec4b833ececed311766a2f7ff0ea6"} device-1 | {"level":"info","message":"GET /devices/a82b2964-324e-486e-be33-d289becbdb9c? 200 19ms","method":"GET","requestID":"7b9ec4b833ececed311766a2f7ff0ea6","responseTime":19,"status":200,"url":"/devices/a82b2964-324e-486e-be33-d289becbdb9c?"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"ded9f400-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"ded9f400-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"ded9f400-782a-11ef-938d-0b888d58857d","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db?id=d8e791a1-e186-4bc9-8ad9-2aabc0899f53","ws://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db?id=87a52ff8-cf34-41ec-977d-5b5dff804e05"]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"9fd99517e8f0d16d34b0c67d63fccc0c"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"dedab750-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":538,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":538,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.952164,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dedab750-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931099,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"dedab750-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"8b5328ee-84fb-487d-ad0d-b13391ea70ca","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.476109} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"97adcb4e-abfa-49f3-ba78-621954c66bb2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.4763842} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"dedab750-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"dedab750-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"dedab750-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/cd3232f8-8fc8-4f4e-95e6-ba733f8666d3'","requestID":"dedab750-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/cd3232f8-8fc8-4f4e-95e6-ba733f8666d3'","requestID":"dedab750-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"dedab750-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 32ms","method":"POST","requestID":"dedab750-782a-11ef-88d4-5fea3f61bb98","responseTime":32,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"dedab750-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/cd3232f8-8fc8-4f4e-95e6-ba733f8666d3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cd3232f8-8fc8-4f4e-95e6-ba733f8666d3","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"dee19520-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\"","requestID":"dee19520-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"dee19520-782a-11ef-938d-0b888d58857d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5b4a791e6abe6a70bc0fc0984a1bbfbd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5b4a791e6abe6a70bc0fc0984a1bbfbd","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"dee23160-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"87a52ff8-cf34-41ec-977d-5b5dff804e05\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\"","requestID":"dee23160-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"dee23160-782a-11ef-938d-0b888d58857d"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/cd3232f8-8fc8-4f4e-95e6-ba733f8666d3"}}},"level":"info","message":"received a callback","requestID":"5b4a791e6abe6a70bc0fc0984a1bbfbd"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} device-1 | {"data":{"peerconnection":"cd3232f8-8fc8-4f4e-95e6-ba733f8666d3","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 14ms","method":"POST","requestID":"5b4a791e6abe6a70bc0fc0984a1bbfbd","responseTime":14,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch","requestID":"5b4a791e6abe6a70bc0fc0984a1bbfbd"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} device-1 | {"data":{"peerconnection":"cd3232f8-8fc8-4f4e-95e6-ba733f8666d3","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ad653cf-9b83-435d-b591-0826b77b38e9"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"9fd99517e8f0d16d34b0c67d63fccc0c"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/cd3232f8-8fc8-4f4e-95e6-ba733f8666d3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cd3232f8-8fc8-4f4e-95e6-ba733f8666d3","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"54e23cd4cf0bd7bfedf9469bb5a8f4cd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"dee7fdc0-782a-11ef-88d4-5fea3f61bb98"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"54e23cd4cf0bd7bfedf9469bb5a8f4cd","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/cd3232f8-8fc8-4f4e-95e6-ba733f8666d3"}}},"level":"info","message":"received a callback","requestID":"54e23cd4cf0bd7bfedf9469bb5a8f4cd"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":539,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5769548-077f-467c-a774-c346bf4f479e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"88fb51c0-a376-4e25-b203-19d7a7fd5be7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.552911} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":539,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.631333,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dee7fdc0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"dee7fdc0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"dee8e820-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":540,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcd3232f8-8fc8-4f4e-95e6-ba733f8666d3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"83647696-d43e-47df-8086-bef246b034f0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.5587463} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":540,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.378751,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/cd3232f8-8fc8-4f4e-95e6-ba733f8666d3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dee8e820-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/cd3232f8-8fc8-4f4e-95e6-ba733f8666d3","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"dee8e820-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"dee7fdc0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/f5769548-077f-467c-a774-c346bf4f479e/signaling 200 13ms","method":"POST","requestID":"dee7fdc0-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/f5769548-077f-467c-a774-c346bf4f479e/signaling"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"dee8e820-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/cd3232f8-8fc8-4f4e-95e6-ba733f8666d3 200 9ms","method":"GET","requestID":"dee8e820-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/peerconnections/cd3232f8-8fc8-4f4e-95e6-ba733f8666d3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"deea47b0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":541,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa82b2964-324e-486e-be33-d289becbdb9c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9ea58d7b-bbf8-43e0-ab08-4e247b43f5a4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.5678668} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":541,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.406469,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"deea47b0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"deea47b0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"deea47b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a82b2964-324e-486e-be33-d289becbdb9c/signaling 200 9ms","method":"POST","requestID":"deea47b0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/a82b2964-324e-486e-be33-d289becbdb9c/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 26ms","method":"POST","requestID":"54e23cd4cf0bd7bfedf9469bb5a8f4cd","responseTime":26,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.029","http_referrer":"","http_user_agent":"node-fetch","requestID":"54e23cd4cf0bd7bfedf9469bb5a8f4cd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"deec4380-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":542,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa82b2964-324e-486e-be33-d289becbdb9c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d57e8dcd-95ec-41ba-9372-2d6c3fda04f2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.581156} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":542,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.43781,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"deec4380-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"deec4380-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"deec4380-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a82b2964-324e-486e-be33-d289becbdb9c/signaling 200 9ms","method":"POST","requestID":"deec4380-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/a82b2964-324e-486e-be33-d289becbdb9c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"deedf130-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":543,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5769548-077f-467c-a774-c346bf4f479e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5ad6331a-a2b3-4c2f-b911-8ff1c0ffb357","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.5914774} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":543,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.126528,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"deedf130-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"deedf130-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"deedf130-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/f5769548-077f-467c-a774-c346bf4f479e/signaling 200 8ms","method":"POST","requestID":"deedf130-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/f5769548-077f-467c-a774-c346bf4f479e/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is","level":"info","message":"auth send jwt","requestID":"7435b038cd06fc75a8c6d69d09a9e072"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7435b038cd06fc75a8c6d69d09a9e072","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/5ad653cf-9b83-435d-b591-0826b77b38e9","requestID":"7435b038cd06fc75a8c6d69d09a9e072"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":544,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":544,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.191363,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5ad653cf-9b83-435d-b591-0826b77b38e9","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"7435b038cd06fc75a8c6d69d09a9e072","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/5ad653cf-9b83-435d-b591-0826b77b38e9","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931099,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7435b038cd06fc75a8c6d69d09a9e072","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/5ad653cf-9b83-435d-b591-0826b77b38e9","requestID":"7435b038cd06fc75a8c6d69d09a9e072"} gateway-1 | {"time_local":"21/Sep/2024:15:04:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/5ad653cf-9b83-435d-b591-0826b77b38e9 HTTP/1.1","status": "200","body_bytes_sent":"855","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7435b038cd06fc75a8c6d69d09a9e072"} experiment-1 | {"level":"info","message":"GET /experiments/5ad653cf-9b83-435d-b591-0826b77b38e9 200 15ms","method":"GET","requestID":"7435b038cd06fc75a8c6d69d09a9e072","responseTime":15,"status":200,"url":"/experiments/5ad653cf-9b83-435d-b591-0826b77b38e9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is","level":"info","message":"auth send jwt","requestID":"b8f93094796302136362235128374247"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b8f93094796302136362235128374247","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/5ad653cf-9b83-435d-b591-0826b77b38e9","requestID":"b8f93094796302136362235128374247"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":545,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":545,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.226967,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5ad653cf-9b83-435d-b591-0826b77b38e9","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b8f93094796302136362235128374247","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/5ad653cf-9b83-435d-b591-0826b77b38e9","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931099,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b8f93094796302136362235128374247","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ad653cf-9b83-435d-b591-0826b77b38e9"},"level":"info","message":"Attempting to finish experiment","requestID":"b8f93094796302136362235128374247"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"df05bef0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":546,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":546,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":2.318349,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/cd3232f8-8fc8-4f4e-95e6-ba733f8666d3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"df05bef0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/cd3232f8-8fc8-4f4e-95e6-ba733f8666d3","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931099,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"df05bef0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:04:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db?id=d8e791a1-e186-4bc9-8ad9-2aabc0899f53 HTTP/1.1","status": "101","body_bytes_sent":"940747","request_time":"0.253","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f5a273cc1d24853b8ec6d09033fd6ce6"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"d8e791a1-e186-4bc9-8ad9-2aabc0899f53\" from room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/cd3232f8-8fc8-4f4e-95e6-ba733f8666d3' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/cd3232f8-8fc8-4f4e-95e6-ba733f8666d3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cd3232f8-8fc8-4f4e-95e6-ba733f8666d3","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"21/Sep/2024:15:04:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db?id=87a52ff8-cf34-41ec-977d-5b5dff804e05 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.251","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6599ba0ba931076b4043479292746779"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"87a52ff8-cf34-41ec-977d-5b5dff804e05\" in room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"87a52ff8-cf34-41ec-977d-5b5dff804e05\" from room \"http://localhost/rooms/f581cdf9-225c-4d8a-ae17-6243df97a4db\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/cd3232f8-8fc8-4f4e-95e6-ba733f8666d3","device":"f5769548-077f-467c-a774-c346bf4f479e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2eca01c8e6375af11889b3867379f732","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcd3232f8-8fc8-4f4e-95e6-ba733f8666d3': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcd3232f8-8fc8-4f4e-95e6-ba733f8666d3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"510df725-0b69-4490-b348-40e3a9388570","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.7639368} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a2c2af05-529a-49d2-a2e5-bcd634068e68","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.76424} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2eca01c8e6375af11889b3867379f732","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ae7e6622da2aaab46281adcbc58d4ed4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"df05bef0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/cd3232f8-8fc8-4f4e-95e6-ba733f8666d3"}}},"level":"info","message":"received a callback","requestID":"2eca01c8e6375af11889b3867379f732"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ae7e6622da2aaab46281adcbc58d4ed4","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/cd3232f8-8fc8-4f4e-95e6-ba733f8666d3"}}},"level":"info","message":"received a callback","requestID":"ae7e6622da2aaab46281adcbc58d4ed4"} device-1 | {"data":{"peerconnection":"cd3232f8-8fc8-4f4e-95e6-ba733f8666d3","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e'"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"df05bef0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/cd3232f8-8fc8-4f4e-95e6-ba733f8666d3 204 43ms","method":"DELETE","requestID":"df05bef0-782a-11ef-88d4-5fea3f61bb98","responseTime":43,"status":204,"url":"/peerconnections/cd3232f8-8fc8-4f4e-95e6-ba733f8666d3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ad653cf-9b83-435d-b591-0826b77b38e9"},"level":"info","message":"Successfully finished experiment","requestID":"b8f93094796302136362235128374247"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"df0f34d0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":547,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa82b2964-324e-486e-be33-d289becbdb9c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2eff6138-0736-4593-84e9-c7ae61bfca31","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.8109481} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":547,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.002471,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"df0f34d0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"df0f34d0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"df0f34d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a82b2964-324e-486e-be33-d289becbdb9c/signaling 200 12ms","method":"POST","requestID":"df0f34d0-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/a82b2964-324e-486e-be33-d289becbdb9c/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5ad653cf-9b83-435d-b591-0826b77b38e9': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5ad653cf-9b83-435d-b591-0826b77b38e9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"391a0f95-e7f1-4065-9153-79daff23b5a5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.818237} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"564aeb45-fcec-43c5-abf5-727154139b4f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.8185096} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"df1157b0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"b8f93094796302136362235128374247","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":548,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5769548-077f-467c-a774-c346bf4f479e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"000a4623-ccc1-4f60-b681-401026b7e439","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.8255005} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":548,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.017469,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"df1157b0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"df1157b0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"df1157b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/f5769548-077f-467c-a774-c346bf4f479e/signaling 200 11ms","method":"POST","requestID":"df1157b0-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/f5769548-077f-467c-a774-c346bf4f479e/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/5ad653cf-9b83-435d-b591-0826b77b38e9","requestID":"b8f93094796302136362235128374247"} gateway-1 | {"time_local":"21/Sep/2024:15:04:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/5ad653cf-9b83-435d-b591-0826b77b38e9 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.160","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b8f93094796302136362235128374247"} experiment-1 | {"level":"info","message":"DELETE /experiments/5ad653cf-9b83-435d-b591-0826b77b38e9 204 156ms","method":"DELETE","requestID":"b8f93094796302136362235128374247","responseTime":156,"status":204,"url":"/experiments/5ad653cf-9b83-435d-b591-0826b77b38e9"} gateway-1 | {"time_local":"21/Sep/2024:15:04:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1438","request_time":"2.319","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"db6fcd73f884a2cad392c168a781a312"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 120ms","method":"POST","requestID":"2eca01c8e6375af11889b3867379f732","responseTime":120,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.124","http_referrer":"","http_user_agent":"node-fetch","requestID":"2eca01c8e6375af11889b3867379f732"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 119ms","method":"POST","requestID":"ae7e6622da2aaab46281adcbc58d4ed4","responseTime":119,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:04:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.125","http_referrer":"","http_user_agent":"node-fetch","requestID":"ae7e6622da2aaab46281adcbc58d4ed4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is","level":"info","message":"auth send jwt","requestID":"4d95d25578edd90a898d785959237d2a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4d95d25578edd90a898d785959237d2a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4d95d25578edd90a898d785959237d2a"} gateway-1 | {"time_local":"21/Sep/2024:15:04:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1437","request_time":"0.812","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"dd8b8822bf5fb24404f1ba6e79cac4c8"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":549,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":549,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.958402,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"4d95d25578edd90a898d785959237d2a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931099,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4d95d25578edd90a898d785959237d2a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a82b2964-324e-486e-be33-d289becbdb9c' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"87f185c1-4e29-4e46-863a-ee75acaba305","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.91391} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4d95d25578edd90a898d785959237d2a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/f5769548-077f-467c-a774-c346bf4f479e' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5ce8f66c-cb0a-46fd-b89f-b11fd5a16134","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.9193168} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"4d95d25578edd90a898d785959237d2a","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"86ecdf86-7b6b-41cb-84a6-7eb0fd2c9fcb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.928368} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8e75c067-fa1e-4023-b713-e8f5bf011176","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.9284906} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"4d95d25578edd90a898d785959237d2a","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:59.928344590Z"}]},"request_id":"1e3298c0-6a3c-413d-be5b-1b633cbe3450","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.933942} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4d95d25578edd90a898d785959237d2a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4d95d25578edd90a898d785959237d2a"} gateway-1 | {"time_local":"21/Sep/2024:15:04:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4d95d25578edd90a898d785959237d2a"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"4d95d25578edd90a898d785959237d2a","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is","level":"info","message":"auth send jwt","requestID":"38a89d583aa8e9dc369b6f3472b7fa08"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"38a89d583aa8e9dc369b6f3472b7fa08","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"38a89d583aa8e9dc369b6f3472b7fa08"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":550,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":550,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.742893,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:04:59Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"38a89d583aa8e9dc369b6f3472b7fa08","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931099,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTA5OX0.wXSPTKhxrLUXm_OWiFBUt0apMMs-4uN4qHNkJWf88Is"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"38a89d583aa8e9dc369b6f3472b7fa08","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430eba28-ea56-4b74-a22d-ea6a4a52ff57","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3ee9d3df-816f-4923-b12b-147ff6c201f2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.964912} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"38a89d583aa8e9dc369b6f3472b7fa08","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a847e1bc-cdcb-41a8-b634-5e9f8bcafb9a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.969662} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"38a89d583aa8e9dc369b6f3472b7fa08","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430eba28-ea56-4b74-a22d-ea6a4a52ff57","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"fbb674de-3035-4ef0-90bf-00d3fdf5a44a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.9814816} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"94697e20-3f0f-46ca-9096-ef81ea8416f0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.9816694} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"38a89d583aa8e9dc369b6f3472b7fa08","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430eba28-ea56-4b74-a22d-ea6a4a52ff57","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430eba28-ea56-4b74-a22d-ea6a4a52ff57","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:59.981460050Z"}]},"request_id":"aa9bcf39-33da-4481-8350-17cce4d7607c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931099.9863164} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"38a89d583aa8e9dc369b6f3472b7fa08","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"38a89d583aa8e9dc369b6f3472b7fa08"} gateway-1 | {"time_local":"21/Sep/2024:15:04:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"38a89d583aa8e9dc369b6f3472b7fa08"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"38a89d583aa8e9dc369b6f3472b7fa08","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMH0.qAvTbwS9R5zFkn5tb_ou0NGnVjhLH4lUJZGnk0-DKG4","level":"info","message":"auth send jwt","requestID":"990c8d24cf2831ea2fad86e3540579c5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"990c8d24cf2831ea2fad86e3540579c5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"990c8d24cf2831ea2fad86e3540579c5"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":551,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:00Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":551,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.914871,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"990c8d24cf2831ea2fad86e3540579c5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931100,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMH0.qAvTbwS9R5zFkn5tb_ou0NGnVjhLH4lUJZGnk0-DKG4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"990c8d24cf2831ea2fad86e3540579c5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:59.928344590Z"}]},"request_id":"9a3f10a0-c73f-42bd-a849-e2297dc2def8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931100.4760675} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"990c8d24cf2831ea2fad86e3540579c5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aeee448d-741c-47a0-bb5a-b8d8e8bc5f07","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931100.4827778} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"990c8d24cf2831ea2fad86e3540579c5","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:59.928344590Z"}]},"request_id":"1d84f923-4062-4b7f-a19b-7a45dac6cd77","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931100.496281} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"990c8d24cf2831ea2fad86e3540579c5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"990c8d24cf2831ea2fad86e3540579c5"} device-1 | {"level":"info","message":"PATCH /devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e 200 37ms","method":"PATCH","requestID":"990c8d24cf2831ea2fad86e3540579c5","responseTime":37,"status":200,"url":"/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e"} gateway-1 | {"time_local":"21/Sep/2024:15:05:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.043","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"990c8d24cf2831ea2fad86e3540579c5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMH0.qAvTbwS9R5zFkn5tb_ou0NGnVjhLH4lUJZGnk0-DKG4","level":"info","message":"auth send jwt","requestID":"a45723480fe703cd49c87a827318e161"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a45723480fe703cd49c87a827318e161","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a45723480fe703cd49c87a827318e161"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":552,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:00Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":552,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.347666,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a45723480fe703cd49c87a827318e161","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931100,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMH0.qAvTbwS9R5zFkn5tb_ou0NGnVjhLH4lUJZGnk0-DKG4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a45723480fe703cd49c87a827318e161","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a45723480fe703cd49c87a827318e161"} device-1 | {"level":"info","message":"POST /devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e/websocket 200 22ms","method":"POST","requestID":"a45723480fe703cd49c87a827318e161","responseTime":22,"status":200,"url":"/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:05:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"a45723480fe703cd49c87a827318e161"} device-1 | {"level":"info","message":"device 'http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3ac59f5eee78fa126204e9be1cf33b7c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3ac59f5eee78fa126204e9be1cf33b7c","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3ac59f5eee78fa126204e9be1cf33b7c"} device-1 | {"level":"info","message":"OPTIONS /devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57/websocket 200 1ms","method":"OPTIONS","requestID":"3ac59f5eee78fa126204e9be1cf33b7c","responseTime":1,"status":200,"url":"/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMn0.Z0wBzS1gIY-mYlkbYeWkmi_N2e2bvQv3gE41gLRDyUU","level":"info","message":"auth send jwt","requestID":"902cb92a62c53561b6a0d2fd3fa21b6f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"902cb92a62c53561b6a0d2fd3fa21b6f","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"902cb92a62c53561b6a0d2fd3fa21b6f"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":553,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":553,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.160777,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"902cb92a62c53561b6a0d2fd3fa21b6f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931102,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMn0.Z0wBzS1gIY-mYlkbYeWkmi_N2e2bvQv3gE41gLRDyUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"902cb92a62c53561b6a0d2fd3fa21b6f","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"902cb92a62c53561b6a0d2fd3fa21b6f"} gateway-1 | {"time_local":"21/Sep/2024:15:05:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"902cb92a62c53561b6a0d2fd3fa21b6f"} device-1 | {"level":"info","message":"POST /devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57/websocket 200 21ms","method":"POST","requestID":"902cb92a62c53561b6a0d2fd3fa21b6f","responseTime":21,"status":200,"url":"/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"21d046e88f816cade5d745addc9895c5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"21d046e88f816cade5d745addc9895c5","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"21d046e88f816cade5d745addc9895c5"} device-1 | {"level":"info","message":"OPTIONS /devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57? 200 1ms","method":"OPTIONS","requestID":"21d046e88f816cade5d745addc9895c5","responseTime":1,"status":200,"url":"/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMn0.Z0wBzS1gIY-mYlkbYeWkmi_N2e2bvQv3gE41gLRDyUU","level":"info","message":"auth send jwt","requestID":"fe459c93683f4ee5e20b19b49153d792"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fe459c93683f4ee5e20b19b49153d792","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"fe459c93683f4ee5e20b19b49153d792"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":554,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":554,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.155917,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fe459c93683f4ee5e20b19b49153d792","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931102,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMn0.Z0wBzS1gIY-mYlkbYeWkmi_N2e2bvQv3gE41gLRDyUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fe459c93683f4ee5e20b19b49153d792","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430eba28-ea56-4b74-a22d-ea6a4a52ff57","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430eba28-ea56-4b74-a22d-ea6a4a52ff57","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:59.981460050Z"}]},"request_id":"8cd80153-1b3f-408d-95d7-bc3186e4f1e8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.0984292} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"fe459c93683f4ee5e20b19b49153d792","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fd0970fc-960e-4240-8e3c-2d84a2aafc4d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.1055195} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"fe459c93683f4ee5e20b19b49153d792","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430eba28-ea56-4b74-a22d-ea6a4a52ff57","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430eba28-ea56-4b74-a22d-ea6a4a52ff57","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:59.981460050Z"}]},"request_id":"7b0d93f6-5b36-4263-9df5-e36e42292ced","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.1185205} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fe459c93683f4ee5e20b19b49153d792","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"fe459c93683f4ee5e20b19b49153d792"} device-1 | {"level":"info","message":"PATCH /devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57? 200 37ms","method":"PATCH","requestID":"fe459c93683f4ee5e20b19b49153d792","responseTime":37,"status":200,"url":"/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.043","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"fe459c93683f4ee5e20b19b49153d792"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMn0.Z0wBzS1gIY-mYlkbYeWkmi_N2e2bvQv3gE41gLRDyUU","level":"info","message":"auth send jwt","requestID":"e4f734cdcb8a8479e0b504b8c9076fe4"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e4f734cdcb8a8479e0b504b8c9076fe4","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e4f734cdcb8a8479e0b504b8c9076fe4"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":555,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":555,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.762689,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e4f734cdcb8a8479e0b504b8c9076fe4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931102,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMn0.Z0wBzS1gIY-mYlkbYeWkmi_N2e2bvQv3gE41gLRDyUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e4f734cdcb8a8479e0b504b8c9076fe4","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:59.928344590Z"}]},"request_id":"b251c072-107c-4fe9-981c-74ecd503e8b7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.1483076} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e4f734cdcb8a8479e0b504b8c9076fe4","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e4f734cdcb8a8479e0b504b8c9076fe4"} gateway-1 | {"time_local":"21/Sep/2024:15:05:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e4f734cdcb8a8479e0b504b8c9076fe4"} device-1 | {"level":"info","message":"GET /devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e? 200 18ms","method":"GET","requestID":"e4f734cdcb8a8479e0b504b8c9076fe4","responseTime":18,"status":200,"url":"/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMn0.Z0wBzS1gIY-mYlkbYeWkmi_N2e2bvQv3gE41gLRDyUU","level":"info","message":"auth send jwt","requestID":"6f077b7475c6cc274fe4f267b8ad55f8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6f077b7475c6cc274fe4f267b8ad55f8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6f077b7475c6cc274fe4f267b8ad55f8"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":556,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":556,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.392964,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"6f077b7475c6cc274fe4f267b8ad55f8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931102,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMn0.Z0wBzS1gIY-mYlkbYeWkmi_N2e2bvQv3gE41gLRDyUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6f077b7475c6cc274fe4f267b8ad55f8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430eba28-ea56-4b74-a22d-ea6a4a52ff57","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430eba28-ea56-4b74-a22d-ea6a4a52ff57","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:59.981460050Z"}]},"request_id":"7f05a2f3-3034-4e45-af25-8863206f5cbe","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.1749775} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6f077b7475c6cc274fe4f267b8ad55f8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6f077b7475c6cc274fe4f267b8ad55f8"} gateway-1 | {"time_local":"21/Sep/2024:15:05:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6f077b7475c6cc274fe4f267b8ad55f8"} device-1 | {"level":"info","message":"GET /devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57? 200 16ms","method":"GET","requestID":"6f077b7475c6cc274fe4f267b8ad55f8","responseTime":16,"status":200,"url":"/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMn0.Z0wBzS1gIY-mYlkbYeWkmi_N2e2bvQv3gE41gLRDyUU","level":"info","message":"auth send jwt","requestID":"2baa654b53ee2c50fe243517628cfbf4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2baa654b53ee2c50fe243517628cfbf4","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"2baa654b53ee2c50fe243517628cfbf4"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":557,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":557,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.165807,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"2baa654b53ee2c50fe243517628cfbf4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931102,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMn0.Z0wBzS1gIY-mYlkbYeWkmi_N2e2bvQv3gE41gLRDyUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2baa654b53ee2c50fe243517628cfbf4","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c01f2ed8-235c-4523-b5ab-36e584e27178"},"level":"info","message":"Attempting to run experiment","requestID":"2baa654b53ee2c50fe243517628cfbf4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c01f2ed8-235c-4523-b5ab-36e584e27178"},"level":"info","message":"Attempting to book experiment","requestID":"2baa654b53ee2c50fe243517628cfbf4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c01f2ed8-235c-4523-b5ab-36e584e27178"},"level":"info","message":"Successfully booked experiment","requestID":"2baa654b53ee2c50fe243517628cfbf4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e08225c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e08273e0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":558,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":558,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.080758,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":559,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e08225c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931102,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMn0.Z0wBzS1gIY-mYlkbYeWkmi_N2e2bvQv3gE41gLRDyUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e08225c0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":559,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.713737,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e08273e0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931102,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMn0.Z0wBzS1gIY-mYlkbYeWkmi_N2e2bvQv3gE41gLRDyUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e08273e0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:59.928344590Z"}]},"request_id":"16a2416c-3d9c-4490-a038-34515ecad343","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.247527} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e08225c0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430eba28-ea56-4b74-a22d-ea6a4a52ff57","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430eba28-ea56-4b74-a22d-ea6a4a52ff57","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:59.981460050Z"}]},"request_id":"e86ae187-37a2-42d8-9e70-afbd91d11069","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.2487366} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e08273e0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e08225c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e? 200 21ms","method":"GET","requestID":"e08225c0-782a-11ef-88d4-5fea3f61bb98","responseTime":21,"status":200,"url":"/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e08273e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57? 200 20ms","method":"GET","requestID":"e08273e0-782a-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c01f2ed8-235c-4523-b5ab-36e584e27178"},"level":"info","message":"Setting up experiment","requestID":"2baa654b53ee2c50fe243517628cfbf4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c01f2ed8-235c-4523-b5ab-36e584e27178"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"2baa654b53ee2c50fe243517628cfbf4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c01f2ed8-235c-4523-b5ab-36e584e27178"},"level":"info","message":"Successfully locked booking for experiment","requestID":"2baa654b53ee2c50fe243517628cfbf4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c01f2ed8-235c-4523-b5ab-36e584e27178"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"2baa654b53ee2c50fe243517628cfbf4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c01f2ed8-235c-4523-b5ab-36e584e27178"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"2baa654b53ee2c50fe243517628cfbf4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c01f2ed8-235c-4523-b5ab-36e584e27178"},"level":"info","message":"Attempting to update booking for experiment","requestID":"2baa654b53ee2c50fe243517628cfbf4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c01f2ed8-235c-4523-b5ab-36e584e27178"},"level":"info","message":"Successfully updated booking for experiment","requestID":"2baa654b53ee2c50fe243517628cfbf4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c01f2ed8-235c-4523-b5ab-36e584e27178"},"level":"info","message":"Successfully set up experiment","requestID":"2baa654b53ee2c50fe243517628cfbf4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e08d7060-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e08dbe80-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e08e33b0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":560,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":561,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:02Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c01f2ed8-235c-4523-b5ab-36e584e27178"},"level":"info","message":"Successfully running experiment","requestID":"2baa654b53ee2c50fe243517628cfbf4"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":560,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.224532,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":561,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.985994,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"client_addr":"127.0.0.1:56758","level":"info","msg":"Received request.","req_id":562,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e08d7060-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931102,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMn0.Z0wBzS1gIY-mYlkbYeWkmi_N2e2bvQv3gE41gLRDyUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"e08d7060-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e08dbe80-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931102,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMn0.Z0wBzS1gIY-mYlkbYeWkmi_N2e2bvQv3gE41gLRDyUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"e08dbe80-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56758","level":"info","msg":"Sent response.","req_id":562,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.037963,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bbf65e5b-926a-4a1d-800f-a56aee31bee3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.323425} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e08e33b0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"e08e33b0-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:59.928344590Z"}]},"request_id":"b6386404-ccc8-4910-8613-51a360064f70","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.3285496} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"e08d7060-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e08e33b0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430eba28-ea56-4b74-a22d-ea6a4a52ff57","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430eba28-ea56-4b74-a22d-ea6a4a52ff57","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:59.981460050Z"}]},"request_id":"c325c8ce-5915-4301-b8fc-4cdd942b4aae","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.3325045} device-1 | {"level":"info","message":"POST /devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e/signaling 200 18ms","method":"POST","requestID":"e08e33b0-782a-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e08dbe80-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e091b620-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e08d7060-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":563,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:02Z"} device-1 | {"level":"info","message":"GET /devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e? 200 33ms","method":"GET","requestID":"e08d7060-782a-11ef-88d4-5fea3f61bb98","responseTime":33,"status":200,"url":"/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e08dbe80-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57? 200 33ms","method":"GET","requestID":"e08dbe80-782a-11ef-88d4-5fea3f61bb98","responseTime":33,"status":200,"url":"/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430eba28-ea56-4b74-a22d-ea6a4a52ff57","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e354bd45-2659-413a-921a-66f2ebf465ed","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.3466113} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc01f2ed8-235c-4523-b5ab-36e584e27178#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc01f2ed8-235c-4523-b5ab-36e584e27178","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"75451a03-6c62-4842-89c3-c0770e1da1c2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.3468251} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e0933cc0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b1a0a5e7-22f5-49db-86d9-6ec545b78696","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.3473766} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":563,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.164441,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e091b620-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"e091b620-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"2baa654b53ee2c50fe243517628cfbf4","responseTime":27,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":564,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:02Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e091b620-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57/signaling 200 16ms","method":"POST","requestID":"e091b620-782a-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9d23f774-6a6c-43fd-a428-b8b01047857d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.3568428} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":564,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.122579,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e0933cc0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"e0933cc0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/c01f2ed8-235c-4523-b5ab-36e584e27178","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"2baa654b53ee2c50fe243517628cfbf4"} gateway-1 | {"time_local":"21/Sep/2024:15:05:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"782","request_time":"0.181","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2baa654b53ee2c50fe243517628cfbf4"} experiment-1 | {"level":"info","message":"POST /experiments? 201 174ms","method":"POST","requestID":"2baa654b53ee2c50fe243517628cfbf4","responseTime":174,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e0933cc0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e/signaling 200 16ms","method":"POST","requestID":"e0933cc0-782a-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e09622f0-782a-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMn0.Z0wBzS1gIY-mYlkbYeWkmi_N2e2bvQv3gE41gLRDyUU","level":"info","message":"auth send jwt","requestID":"8633aeda85d97a8bb9b0b248facbc090"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8633aeda85d97a8bb9b0b248facbc090","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8633aeda85d97a8bb9b0b248facbc090"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":565,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":566,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430eba28-ea56-4b74-a22d-ea6a4a52ff57","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"940ef8ea-9738-4665-94bc-3630ab7a9ce4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.373341} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":566,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.166862,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"8633aeda85d97a8bb9b0b248facbc090","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931102,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMn0.Z0wBzS1gIY-mYlkbYeWkmi_N2e2bvQv3gE41gLRDyUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8633aeda85d97a8bb9b0b248facbc090","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":565,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.601351,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e09622f0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"e09622f0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e09622f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57/signaling 200 13ms","method":"POST","requestID":"e09622f0-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c01f2ed8-235c-4523-b5ab-36e584e27178"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"2baa654b53ee2c50fe243517628cfbf4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e09893f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e098e210-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:59.928344590Z"}]},"request_id":"5a8d5dc7-26a2-4f49-a49c-4723197829e0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.3803613} authorization-1 | {"level":"info","message":"POST /relations/query 200 12ms","method":"POST","requestID":"8633aeda85d97a8bb9b0b248facbc090","responseTime":12,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8633aeda85d97a8bb9b0b248facbc090"} gateway-1 | {"time_local":"21/Sep/2024:15:05:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8633aeda85d97a8bb9b0b248facbc090"} device-1 | {"level":"info","message":"GET /devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e? 200 23ms","method":"GET","requestID":"8633aeda85d97a8bb9b0b248facbc090","responseTime":23,"status":200,"url":"/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":567,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":567,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.257728,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":568,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e09893f0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931102,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMn0.Z0wBzS1gIY-mYlkbYeWkmi_N2e2bvQv3gE41gLRDyUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e09893f0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":568,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.317808,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e098e210-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931102,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMn0.Z0wBzS1gIY-mYlkbYeWkmi_N2e2bvQv3gE41gLRDyUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e098e210-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMn0.Z0wBzS1gIY-mYlkbYeWkmi_N2e2bvQv3gE41gLRDyUU","level":"info","message":"auth send jwt","requestID":"e76bcea51e0d9da9d738dba496094efe"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e76bcea51e0d9da9d738dba496094efe","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e76bcea51e0d9da9d738dba496094efe"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:59.928344590Z"}]},"request_id":"4d1ff0f5-efcf-4e4f-92e2-e528ed891b99","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.4017105} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430eba28-ea56-4b74-a22d-ea6a4a52ff57","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430eba28-ea56-4b74-a22d-ea6a4a52ff57","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:59.981460050Z"}]},"request_id":"e7e763c6-4edb-4698-a148-a18c6524bca1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.403773} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"e09893f0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"e098e210-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":569,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":569,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.924016,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e76bcea51e0d9da9d738dba496094efe","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931102,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMn0.Z0wBzS1gIY-mYlkbYeWkmi_N2e2bvQv3gE41gLRDyUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e76bcea51e0d9da9d738dba496094efe","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e09893f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e? 200 28ms","method":"GET","requestID":"e09893f0-782a-11ef-88d4-5fea3f61bb98","responseTime":28,"status":200,"url":"/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e098e210-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57? 200 27ms","method":"GET","requestID":"e098e210-782a-11ef-88d4-5fea3f61bb98","responseTime":27,"status":200,"url":"/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c01f2ed8-235c-4523-b5ab-36e584e27178"},"level":"info","message":"Building connection plan","requestID":"2baa654b53ee2c50fe243517628cfbf4"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"56218f94-0726-4d08-b118-832e4353505d"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"5d138ff5-1fdd-4f2a-98f8-c45f19453813"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"e66c293c-0ba3-4988-96ce-f0a9649dd457"}]},"level":"info","message":"Built pairwise service configurations","requestID":"2baa654b53ee2c50fe243517628cfbf4"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"e09d75f0-782a-11ef-938d-0b888d58857d"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430eba28-ea56-4b74-a22d-ea6a4a52ff57","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430eba28-ea56-4b74-a22d-ea6a4a52ff57","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:04:59.981460050Z"}]},"request_id":"5d23b9b8-17b9-498f-99fd-b69ecb1936ce","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.4157207} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"e09d75f0-782a-11ef-938d-0b888d58857d"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e76bcea51e0d9da9d738dba496094efe","responseTime":4,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"POST /rooms 201 2ms","method":"POST","requestID":"e09d75f0-782a-11ef-938d-0b888d58857d","responseTime":2,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec?id=b2f1436c-afdf-4f13-bad4-fce3edc83483","ws://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec?id=21537cc8-4619-4495-b1db-993b1258c6c0"]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"2baa654b53ee2c50fe243517628cfbf4"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"e09e1230-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e76bcea51e0d9da9d738dba496094efe"} gateway-1 | {"time_local":"21/Sep/2024:15:05:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e76bcea51e0d9da9d738dba496094efe"} device-1 | {"level":"info","message":"GET /devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57? 200 21ms","method":"GET","requestID":"e76bcea51e0d9da9d738dba496094efe","responseTime":21,"status":200,"url":"/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":570,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":570,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.68826,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e09e1230-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931102,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMn0.Z0wBzS1gIY-mYlkbYeWkmi_N2e2bvQv3gE41gLRDyUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e09e1230-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"a3baeb8b-0ec6-45e8-9d66-5fbea4a04005","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.4315143} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"72591b0e-3e72-4434-9aa1-0eef97768972","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.431739} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"e09e1230-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"e09e1230-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"e09e1230-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/51a507af-8fd4-44ce-9889-8309ee34e4a3'","requestID":"e09e1230-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/51a507af-8fd4-44ce-9889-8309ee34e4a3'","requestID":"e09e1230-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"e09e1230-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 24ms","method":"POST","requestID":"e09e1230-782a-11ef-88d4-5fea3f61bb98","responseTime":24,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"e09e1230-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/51a507af-8fd4-44ce-9889-8309ee34e4a3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"51a507af-8fd4-44ce-9889-8309ee34e4a3","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"e0a36960-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"21537cc8-4619-4495-b1db-993b1258c6c0\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\"","requestID":"e0a36960-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"e0a36960-782a-11ef-938d-0b888d58857d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"88e5a7891fe8c4978e0c7aec04035087","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"88e5a7891fe8c4978e0c7aec04035087","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"e0a3b780-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\"","requestID":"e0a3b780-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"e0a3b780-782a-11ef-938d-0b888d58857d"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/51a507af-8fd4-44ce-9889-8309ee34e4a3"}}},"level":"info","message":"received a callback","requestID":"88e5a7891fe8c4978e0c7aec04035087"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} device-1 | {"data":{"peerconnection":"51a507af-8fd4-44ce-9889-8309ee34e4a3","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 13ms","method":"POST","requestID":"88e5a7891fe8c4978e0c7aec04035087","responseTime":13,"status":200,"url":"/callbacks/experiment"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} gateway-1 | {"time_local":"21/Sep/2024:15:05:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch","requestID":"88e5a7891fe8c4978e0c7aec04035087"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} device-1 | {"data":{"peerconnection":"51a507af-8fd4-44ce-9889-8309ee34e4a3","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c01f2ed8-235c-4523-b5ab-36e584e27178"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"2baa654b53ee2c50fe243517628cfbf4"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e0a935c0-782a-11ef-88d4-5fea3f61bb98"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":571,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:02Z"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/51a507af-8fd4-44ce-9889-8309ee34e4a3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"51a507af-8fd4-44ce-9889-8309ee34e4a3","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"509fa98d-3e4a-47e7-b69d-6874dcc117f7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.4984262} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":571,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.697295,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:02Z"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e0a935c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"25c99ba72f7f1b89468626a999d030ce","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"e0a935c0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/51a507af-8fd4-44ce-9889-8309ee34e4a3"}}},"level":"info","message":"received a callback","requestID":"25c99ba72f7f1b89468626a999d030ce"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"25c99ba72f7f1b89468626a999d030ce","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"e0aba6c0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":572,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F51a507af-8fd4-44ce-9889-8309ee34e4a3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"704d3677-f108-44ab-b6c5-76ebb59ca830","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.513682} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e0a935c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e/signaling 200 22ms","method":"POST","requestID":"e0a935c0-782a-11ef-88d4-5fea3f61bb98","responseTime":22,"status":200,"url":"/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":572,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.916376,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/51a507af-8fd4-44ce-9889-8309ee34e4a3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e0aba6c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/51a507af-8fd4-44ce-9889-8309ee34e4a3","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e0aba6c0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e0ad0650-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"e0aba6c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/51a507af-8fd4-44ce-9889-8309ee34e4a3 200 12ms","method":"GET","requestID":"e0aba6c0-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/peerconnections/51a507af-8fd4-44ce-9889-8309ee34e4a3"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":573,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430eba28-ea56-4b74-a22d-ea6a4a52ff57","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2d4cfd47-04bd-4bed-b8c3-4a34c7d89de7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.5225945} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":573,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.81134,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e0ad0650-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e0ad0650-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e0ad0650-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57/signaling 200 10ms","method":"POST","requestID":"e0ad0650-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 34ms","method":"POST","requestID":"25c99ba72f7f1b89468626a999d030ce","responseTime":34,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.037","http_referrer":"","http_user_agent":"node-fetch","requestID":"25c99ba72f7f1b89468626a999d030ce"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e0b01390-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":574,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430eba28-ea56-4b74-a22d-ea6a4a52ff57","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0d3d4ab5-44eb-48fc-a9fc-7d8ffff3aafb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.5422513} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":574,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.727854,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e0b01390-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e0b01390-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e0b01390-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57/signaling 200 9ms","method":"POST","requestID":"e0b01390-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e0b1c140-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":575,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ebd92782-c376-44f6-857b-475e0f31fc10","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.5528288} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":575,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.405528,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e0b1c140-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e0b1c140-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e0b1c140-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e/signaling 200 8ms","method":"POST","requestID":"e0b1c140-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMn0.Z0wBzS1gIY-mYlkbYeWkmi_N2e2bvQv3gE41gLRDyUU","level":"info","message":"auth send jwt","requestID":"5be0c8d61c086b61a3afe5b6971811a1"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5be0c8d61c086b61a3afe5b6971811a1","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/c01f2ed8-235c-4523-b5ab-36e584e27178","requestID":"5be0c8d61c086b61a3afe5b6971811a1"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":576,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":576,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.289307,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c01f2ed8-235c-4523-b5ab-36e584e27178","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"5be0c8d61c086b61a3afe5b6971811a1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/c01f2ed8-235c-4523-b5ab-36e584e27178","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931102,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMn0.Z0wBzS1gIY-mYlkbYeWkmi_N2e2bvQv3gE41gLRDyUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5be0c8d61c086b61a3afe5b6971811a1","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/c01f2ed8-235c-4523-b5ab-36e584e27178","requestID":"5be0c8d61c086b61a3afe5b6971811a1"} experiment-1 | {"level":"info","message":"GET /experiments/c01f2ed8-235c-4523-b5ab-36e584e27178 200 15ms","method":"GET","requestID":"5be0c8d61c086b61a3afe5b6971811a1","responseTime":15,"status":200,"url":"/experiments/c01f2ed8-235c-4523-b5ab-36e584e27178"} gateway-1 | {"time_local":"21/Sep/2024:15:05:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/c01f2ed8-235c-4523-b5ab-36e584e27178 HTTP/1.1","status": "200","body_bytes_sent":"855","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5be0c8d61c086b61a3afe5b6971811a1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMn0.Z0wBzS1gIY-mYlkbYeWkmi_N2e2bvQv3gE41gLRDyUU","level":"info","message":"auth send jwt","requestID":"a7a35d72156d2f89e1e350aa8619d47b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a7a35d72156d2f89e1e350aa8619d47b","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/c01f2ed8-235c-4523-b5ab-36e584e27178","requestID":"a7a35d72156d2f89e1e350aa8619d47b"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":577,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":577,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.225963,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c01f2ed8-235c-4523-b5ab-36e584e27178","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a7a35d72156d2f89e1e350aa8619d47b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/c01f2ed8-235c-4523-b5ab-36e584e27178","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931102,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMn0.Z0wBzS1gIY-mYlkbYeWkmi_N2e2bvQv3gE41gLRDyUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a7a35d72156d2f89e1e350aa8619d47b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c01f2ed8-235c-4523-b5ab-36e584e27178"},"level":"info","message":"Attempting to finish experiment","requestID":"a7a35d72156d2f89e1e350aa8619d47b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"e0eca760-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":578,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":578,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.23802,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:02Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/51a507af-8fd4-44ce-9889-8309ee34e4a3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e0eca760-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/51a507af-8fd4-44ce-9889-8309ee34e4a3","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931102,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwMn0.Z0wBzS1gIY-mYlkbYeWkmi_N2e2bvQv3gE41gLRDyUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e0eca760-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:05:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/e561c032-3753-4cf2-b698-2d029fe85dec?id=21537cc8-4619-4495-b1db-993b1258c6c0 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.497","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"fd48ec2eddbf323c5a802765551f57e1"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"21537cc8-4619-4495-b1db-993b1258c6c0\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"21537cc8-4619-4495-b1db-993b1258c6c0\" from room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/51a507af-8fd4-44ce-9889-8309ee34e4a3","device":"430eba28-ea56-4b74-a22d-ea6a4a52ff57","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/51a507af-8fd4-44ce-9889-8309ee34e4a3' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/51a507af-8fd4-44ce-9889-8309ee34e4a3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"51a507af-8fd4-44ce-9889-8309ee34e4a3","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"21/Sep/2024:15:05:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/e561c032-3753-4cf2-b698-2d029fe85dec?id=b2f1436c-afdf-4f13-bad4-fce3edc83483 HTTP/1.1","status": "101","body_bytes_sent":"1203025","request_time":"0.498","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1a7d5ed7606aa837655f90426db69e1b"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" in room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"b2f1436c-afdf-4f13-bad4-fce3edc83483\" from room \"http://localhost/rooms/e561c032-3753-4cf2-b698-2d029fe85dec\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"715cd6ced0e75d0e030ecfa3edf4f3db","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"715cd6ced0e75d0e030ecfa3edf4f3db","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"62358b12a505c271e867c24b22610150","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/51a507af-8fd4-44ce-9889-8309ee34e4a3"}}},"level":"info","message":"received a callback","requestID":"715cd6ced0e75d0e030ecfa3edf4f3db"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"62358b12a505c271e867c24b22610150","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F51a507af-8fd4-44ce-9889-8309ee34e4a3': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F51a507af-8fd4-44ce-9889-8309ee34e4a3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"1cba4c34-f10e-42ba-9b93-d6abeadd9307","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.9570503} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/51a507af-8fd4-44ce-9889-8309ee34e4a3"}}},"level":"info","message":"received a callback","requestID":"62358b12a505c271e867c24b22610150"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fee8ef92-9a67-44fb-8743-08bf44e96922","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931102.9574008} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"e0eca760-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"51a507af-8fd4-44ce-9889-8309ee34e4a3","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"e0eca760-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/51a507af-8fd4-44ce-9889-8309ee34e4a3 204 48ms","method":"DELETE","requestID":"e0eca760-782a-11ef-88d4-5fea3f61bb98","responseTime":48,"status":204,"url":"/peerconnections/51a507af-8fd4-44ce-9889-8309ee34e4a3"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c01f2ed8-235c-4523-b5ab-36e584e27178"},"level":"info","message":"Successfully finished experiment","requestID":"a7a35d72156d2f89e1e350aa8619d47b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e0f6b980-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":579,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430eba28-ea56-4b74-a22d-ea6a4a52ff57","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1860139f-3bc6-43db-91a8-f017bfbf529d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.00633} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":579,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.557223,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e0f6b980-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e0f6b980-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc01f2ed8-235c-4523-b5ab-36e584e27178': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc01f2ed8-235c-4523-b5ab-36e584e27178","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"ef822268-be27-4da8-aaa1-de0b4cf834ca","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.0109851} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e0f6b980-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57/signaling 200 12ms","method":"POST","requestID":"e0f6b980-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cc918059-89af-411e-84b3-8c1eef926f60","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.0113418} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"a7a35d72156d2f89e1e350aa8619d47b","responseTime":14,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e0f8dc60-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":580,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c3f09383-bd0b-49c5-b433-cd0d2b7f5e7a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.019435} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":580,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.560395,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e0f8dc60-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e0f8dc60-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e0f8dc60-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e/signaling 200 9ms","method":"POST","requestID":"e0f8dc60-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/c01f2ed8-235c-4523-b5ab-36e584e27178","requestID":"a7a35d72156d2f89e1e350aa8619d47b"} gateway-1 | {"time_local":"21/Sep/2024:15:05:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/c01f2ed8-235c-4523-b5ab-36e584e27178 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.168","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a7a35d72156d2f89e1e350aa8619d47b"} experiment-1 | {"level":"info","message":"DELETE /experiments/c01f2ed8-235c-4523-b5ab-36e584e27178 204 163ms","method":"DELETE","requestID":"a7a35d72156d2f89e1e350aa8619d47b","responseTime":163,"status":204,"url":"/experiments/c01f2ed8-235c-4523-b5ab-36e584e27178"} gateway-1 | {"time_local":"21/Sep/2024:15:05:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1437","request_time":"2.547","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"43ad95a6d05c18ecea0b584958ea4fec"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 125ms","method":"POST","requestID":"715cd6ced0e75d0e030ecfa3edf4f3db","responseTime":125,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 124ms","method":"POST","requestID":"62358b12a505c271e867c24b22610150","responseTime":124,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA","level":"info","message":"auth send jwt","requestID":"cabd20cd2b174fcc9a610efa6f19af37"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"cabd20cd2b174fcc9a610efa6f19af37","responseTime":5,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.128","http_referrer":"","http_user_agent":"node-fetch","requestID":"715cd6ced0e75d0e030ecfa3edf4f3db"} gateway-1 | {"time_local":"21/Sep/2024:15:05:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.128","http_referrer":"","http_user_agent":"node-fetch","requestID":"62358b12a505c271e867c24b22610150"} device-1 | {"level":"info","message":"postDevices called","requestID":"cabd20cd2b174fcc9a610efa6f19af37"} gateway-1 | {"time_local":"21/Sep/2024:15:05:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1442","request_time":"1.051","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"63eccd9f54a1f231a70c11600e0b8202"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":581,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":581,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.925453,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cabd20cd2b174fcc9a610efa6f19af37","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931103,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cabd20cd2b174fcc9a610efa6f19af37","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/bcf970e4-b3e1-4c5f-8ccf-191ad9ca544e' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b345ce0-a572-40a4-9b4a-9291ef758943","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"85803d05-a45c-4f3c-8f5a-c8f9b9100012","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.1128898} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cabd20cd2b174fcc9a610efa6f19af37","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/430eba28-ea56-4b74-a22d-ea6a4a52ff57' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"28b429f0-69fc-4847-9352-6832abb6e44e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.1189356} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"cabd20cd2b174fcc9a610efa6f19af37","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b345ce0-a572-40a4-9b4a-9291ef758943","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"12fff2ce-8bb2-4d60-bac4-36ba8534435d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.133816} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a7d24413-30e7-49b8-8b7f-c0a5c83c15a4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.1339622} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"cabd20cd2b174fcc9a610efa6f19af37","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b345ce0-a572-40a4-9b4a-9291ef758943","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b345ce0-a572-40a4-9b4a-9291ef758943","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:03.133790521Z"}]},"request_id":"de1c54f4-37f9-4450-9691-ad954285cb8f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.1387246} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cabd20cd2b174fcc9a610efa6f19af37","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"cabd20cd2b174fcc9a610efa6f19af37"} device-1 | {"level":"info","message":"POST /devices? 201 54ms","method":"POST","requestID":"cabd20cd2b174fcc9a610efa6f19af37","responseTime":54,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.062","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cabd20cd2b174fcc9a610efa6f19af37"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA","level":"info","message":"auth send jwt","requestID":"87a2662745d95cd6ca018b6f9c0c6543"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"87a2662745d95cd6ca018b6f9c0c6543","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"87a2662745d95cd6ca018b6f9c0c6543"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":582,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":582,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.689426,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"87a2662745d95cd6ca018b6f9c0c6543","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931103,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"87a2662745d95cd6ca018b6f9c0c6543","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2df4c71-b062-48f0-b255-9548121deebb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"343c301c-11d4-40ad-8d4f-8efe8dfa01a5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.163685} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"87a2662745d95cd6ca018b6f9c0c6543","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7c9823f8-6cf4-4d29-9e34-605af2d25598","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.168367} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"87a2662745d95cd6ca018b6f9c0c6543","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2df4c71-b062-48f0-b255-9548121deebb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"0f3ff1bb-3e9b-425c-9556-caa18048fbd2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.1802921} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c1750808-44f7-44a1-b005-07e86d3f51e3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.1804497} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"87a2662745d95cd6ca018b6f9c0c6543","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2df4c71-b062-48f0-b255-9548121deebb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2df4c71-b062-48f0-b255-9548121deebb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:03.180266568Z"}]},"request_id":"0f7c40a7-ce46-4d9c-83c7-f457859ef34b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.1846693} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"87a2662745d95cd6ca018b6f9c0c6543","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"87a2662745d95cd6ca018b6f9c0c6543"} gateway-1 | {"time_local":"21/Sep/2024:15:05:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"87a2662745d95cd6ca018b6f9c0c6543"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"87a2662745d95cd6ca018b6f9c0c6543","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA","level":"info","message":"auth send jwt","requestID":"d94f2660e722d9d1e364d57b819ae3d7"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d94f2660e722d9d1e364d57b819ae3d7","responseTime":5,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA","level":"info","message":"auth send jwt","requestID":"8b9298a2bdbb18cd4738543e6fd27c49"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d94f2660e722d9d1e364d57b819ae3d7"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"8b9298a2bdbb18cd4738543e6fd27c49","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"8b9298a2bdbb18cd4738543e6fd27c49"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":583,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":583,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.795973,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":584,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d94f2660e722d9d1e364d57b819ae3d7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931103,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d94f2660e722d9d1e364d57b819ae3d7","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":584,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.896654,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"8b9298a2bdbb18cd4738543e6fd27c49","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931103,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8b9298a2bdbb18cd4738543e6fd27c49","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2df4c71-b062-48f0-b255-9548121deebb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2df4c71-b062-48f0-b255-9548121deebb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:03.180266568Z"}]},"request_id":"d51d84c6-b9ff-443d-a400-4b401a9b41a2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.6622689} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d94f2660e722d9d1e364d57b819ae3d7","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b345ce0-a572-40a4-9b4a-9291ef758943","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b345ce0-a572-40a4-9b4a-9291ef758943","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:03.133790521Z"}]},"request_id":"3e0acfb4-680d-4711-8ed4-51ed0e47c335","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.6633418} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8b9298a2bdbb18cd4738543e6fd27c49","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"209aa744-e092-4f96-95fd-645f4064335d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.6676776} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"d94f2660e722d9d1e364d57b819ae3d7","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e0e19301-b509-4d1f-86a9-dd54f796a143","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.6689854} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"8b9298a2bdbb18cd4738543e6fd27c49","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b345ce0-a572-40a4-9b4a-9291ef758943","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b345ce0-a572-40a4-9b4a-9291ef758943","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:03.133790521Z"}]},"request_id":"284a81e6-e64c-49d9-8523-210fd1628c46","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.6718504} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"8b9298a2bdbb18cd4738543e6fd27c49","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"8b9298a2bdbb18cd4738543e6fd27c49"} device-1 | {"level":"info","message":"PATCH /devices/6b345ce0-a572-40a4-9b4a-9291ef758943 200 22ms","method":"PATCH","requestID":"8b9298a2bdbb18cd4738543e6fd27c49","responseTime":22,"status":200,"url":"/devices/6b345ce0-a572-40a4-9b4a-9291ef758943"} gateway-1 | {"time_local":"21/Sep/2024:15:05:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6b345ce0-a572-40a4-9b4a-9291ef758943 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.031","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"8b9298a2bdbb18cd4738543e6fd27c49"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA","level":"info","message":"auth send jwt","requestID":"79744034ced30d15c0c14b9336cc752a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"79744034ced30d15c0c14b9336cc752a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"79744034ced30d15c0c14b9336cc752a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":585,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":585,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.077131,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"79744034ced30d15c0c14b9336cc752a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931103,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"79744034ced30d15c0c14b9336cc752a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2df4c71-b062-48f0-b255-9548121deebb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2df4c71-b062-48f0-b255-9548121deebb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:03.180266568Z"}]},"request_id":"0551fabf-34e1-4e11-bfa7-10df07f11ac4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.6838884} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d94f2660e722d9d1e364d57b819ae3d7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d94f2660e722d9d1e364d57b819ae3d7"} gateway-1 | {"time_local":"21/Sep/2024:15:05:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b2df4c71-b062-48f0-b255-9548121deebb HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.044","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"d94f2660e722d9d1e364d57b819ae3d7"} device-1 | {"level":"info","message":"PATCH /devices/b2df4c71-b062-48f0-b255-9548121deebb 200 36ms","method":"PATCH","requestID":"d94f2660e722d9d1e364d57b819ae3d7","responseTime":36,"status":200,"url":"/devices/b2df4c71-b062-48f0-b255-9548121deebb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA","level":"info","message":"auth send jwt","requestID":"def941b21ac641152dfb6f2b06fa32ce"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"def941b21ac641152dfb6f2b06fa32ce","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"def941b21ac641152dfb6f2b06fa32ce"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":586,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":586,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.648987,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"def941b21ac641152dfb6f2b06fa32ce","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931103,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"def941b21ac641152dfb6f2b06fa32ce","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"79744034ced30d15c0c14b9336cc752a"} gateway-1 | {"time_local":"21/Sep/2024:15:05:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6b345ce0-a572-40a4-9b4a-9291ef758943/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"79744034ced30d15c0c14b9336cc752a"} device-1 | {"level":"info","message":"POST /devices/6b345ce0-a572-40a4-9b4a-9291ef758943/websocket 200 20ms","method":"POST","requestID":"79744034ced30d15c0c14b9336cc752a","responseTime":20,"status":200,"url":"/devices/6b345ce0-a572-40a4-9b4a-9291ef758943/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"def941b21ac641152dfb6f2b06fa32ce"} gateway-1 | {"time_local":"21/Sep/2024:15:05:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b2df4c71-b062-48f0-b255-9548121deebb/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.019","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"def941b21ac641152dfb6f2b06fa32ce"} device-1 | {"level":"info","message":"POST /devices/b2df4c71-b062-48f0-b255-9548121deebb/websocket 200 15ms","method":"POST","requestID":"def941b21ac641152dfb6f2b06fa32ce","responseTime":15,"status":200,"url":"/devices/b2df4c71-b062-48f0-b255-9548121deebb/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA","level":"info","message":"auth send jwt","requestID":"c903013334dda7ed8bcd5b6e091fce1a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c903013334dda7ed8bcd5b6e091fce1a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c903013334dda7ed8bcd5b6e091fce1a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":587,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":587,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.843939,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c903013334dda7ed8bcd5b6e091fce1a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931103,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c903013334dda7ed8bcd5b6e091fce1a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b345ce0-a572-40a4-9b4a-9291ef758943","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b345ce0-a572-40a4-9b4a-9291ef758943","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:03.133790521Z"}]},"request_id":"6014f4dd-dc60-49e9-a799-1f962da7b1e7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.744917} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c903013334dda7ed8bcd5b6e091fce1a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c903013334dda7ed8bcd5b6e091fce1a"} device-1 | {"level":"info","message":"GET /devices/6b345ce0-a572-40a4-9b4a-9291ef758943? 200 12ms","method":"GET","requestID":"c903013334dda7ed8bcd5b6e091fce1a","responseTime":12,"status":200,"url":"/devices/6b345ce0-a572-40a4-9b4a-9291ef758943?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6b345ce0-a572-40a4-9b4a-9291ef758943? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c903013334dda7ed8bcd5b6e091fce1a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA","level":"info","message":"auth send jwt","requestID":"9ed82c64b0d1cf0a3fdf3d24262ed9d9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9ed82c64b0d1cf0a3fdf3d24262ed9d9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9ed82c64b0d1cf0a3fdf3d24262ed9d9"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":588,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":588,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.443133,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"9ed82c64b0d1cf0a3fdf3d24262ed9d9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931103,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9ed82c64b0d1cf0a3fdf3d24262ed9d9","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2df4c71-b062-48f0-b255-9548121deebb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2df4c71-b062-48f0-b255-9548121deebb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:03.180266568Z"}]},"request_id":"4551dc89-5cbf-4aa1-8570-5e127e5a7d12","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.7634587} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9ed82c64b0d1cf0a3fdf3d24262ed9d9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9ed82c64b0d1cf0a3fdf3d24262ed9d9"} device-1 | {"level":"info","message":"GET /devices/b2df4c71-b062-48f0-b255-9548121deebb? 200 13ms","method":"GET","requestID":"9ed82c64b0d1cf0a3fdf3d24262ed9d9","responseTime":13,"status":200,"url":"/devices/b2df4c71-b062-48f0-b255-9548121deebb?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b2df4c71-b062-48f0-b255-9548121deebb? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9ed82c64b0d1cf0a3fdf3d24262ed9d9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA","level":"info","message":"auth send jwt","requestID":"cb0f7c748dbae73d005aa86ca302bf38"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cb0f7c748dbae73d005aa86ca302bf38","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"cb0f7c748dbae73d005aa86ca302bf38"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":589,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":589,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.827352,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cb0f7c748dbae73d005aa86ca302bf38","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931103,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cb0f7c748dbae73d005aa86ca302bf38","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4"},"level":"info","message":"Attempting to run experiment","requestID":"cb0f7c748dbae73d005aa86ca302bf38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4"},"level":"info","message":"Attempting to book experiment","requestID":"cb0f7c748dbae73d005aa86ca302bf38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4"},"level":"info","message":"Successfully booked experiment","requestID":"cb0f7c748dbae73d005aa86ca302bf38"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e1722b10-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e1725220-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":590,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":590,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.662933,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":591,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e1722b10-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931103,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e1722b10-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":591,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.533846,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e1725220-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931103,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e1725220-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b345ce0-a572-40a4-9b4a-9291ef758943","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b345ce0-a572-40a4-9b4a-9291ef758943","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:03.133790521Z"}]},"request_id":"c5fff6e7-d433-4c13-8f64-7f514c66ed6c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.8177185} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e1722b10-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2df4c71-b062-48f0-b255-9548121deebb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2df4c71-b062-48f0-b255-9548121deebb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:03.180266568Z"}]},"request_id":"72c534d7-f5ff-4028-8f20-f7421d1b465e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.8187523} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e1725220-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e1722b10-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/6b345ce0-a572-40a4-9b4a-9291ef758943? 200 14ms","method":"GET","requestID":"e1722b10-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/6b345ce0-a572-40a4-9b4a-9291ef758943?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e1725220-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/b2df4c71-b062-48f0-b255-9548121deebb? 200 14ms","method":"GET","requestID":"e1725220-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/b2df4c71-b062-48f0-b255-9548121deebb?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4"},"level":"info","message":"Setting up experiment","requestID":"cb0f7c748dbae73d005aa86ca302bf38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"cb0f7c748dbae73d005aa86ca302bf38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4"},"level":"info","message":"Successfully locked booking for experiment","requestID":"cb0f7c748dbae73d005aa86ca302bf38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"cb0f7c748dbae73d005aa86ca302bf38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"cb0f7c748dbae73d005aa86ca302bf38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4"},"level":"info","message":"Attempting to update booking for experiment","requestID":"cb0f7c748dbae73d005aa86ca302bf38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4"},"level":"info","message":"Successfully updated booking for experiment","requestID":"cb0f7c748dbae73d005aa86ca302bf38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4"},"level":"info","message":"Successfully set up experiment","requestID":"cb0f7c748dbae73d005aa86ca302bf38"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e17a6870-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e17a8f80-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e17adda0-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4"},"level":"info","message":"Successfully running experiment","requestID":"cb0f7c748dbae73d005aa86ca302bf38"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":592,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":593,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":592,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.544096,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":593,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.804089,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"client_addr":"127.0.0.1:56758","level":"info","msg":"Received request.","req_id":594,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e17a6870-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931103,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e17a6870-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e17a8f80-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931103,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e17a8f80-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56758","level":"info","msg":"Sent response.","req_id":594,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.084731,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b345ce0-a572-40a4-9b4a-9291ef758943","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"abc5f4bb-7cfa-4a99-9634-5f52f087c6e0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.8710928} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e17adda0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e17adda0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e17adda0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/6b345ce0-a572-40a4-9b4a-9291ef758943/signaling 200 10ms","method":"POST","requestID":"e17adda0-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/6b345ce0-a572-40a4-9b4a-9291ef758943/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b345ce0-a572-40a4-9b4a-9291ef758943","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b345ce0-a572-40a4-9b4a-9291ef758943","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:03.133790521Z"}]},"request_id":"b5885300-0660-45f6-8e85-47c7a294c715","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.875488} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e17a6870-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2df4c71-b062-48f0-b255-9548121deebb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2df4c71-b062-48f0-b255-9548121deebb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:03.180266568Z"}]},"request_id":"202951aa-7140-47fa-99b1-8e8f45c6b061","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.8770053} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e17a8f80-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e17cd970-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":595,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:03Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e17a6870-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/6b345ce0-a572-40a4-9b4a-9291ef758943? 200 22ms","method":"GET","requestID":"e17a6870-782a-11ef-88d4-5fea3f61bb98","responseTime":22,"status":200,"url":"/devices/6b345ce0-a572-40a4-9b4a-9291ef758943?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e17a8f80-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2df4c71-b062-48f0-b255-9548121deebb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6096782e-492d-4479-ad70-aded5200f3d3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.8856444} device-1 | {"level":"info","message":"GET /devices/b2df4c71-b062-48f0-b255-9548121deebb? 200 22ms","method":"GET","requestID":"e17a8f80-782a-11ef-88d4-5fea3f61bb98","responseTime":22,"status":200,"url":"/devices/b2df4c71-b062-48f0-b255-9548121deebb?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":595,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.697202,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e17cd970-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e17e3900-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"e17cd970-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F744d2f74-1cf3-4190-91fd-f030ad78bea4#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F744d2f74-1cf3-4190-91fd-f030ad78bea4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"13997aa6-9d9a-46f4-8476-d129eb548b6b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.8882012} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0172028d-937f-47f5-a1e9-2c6fb96df721","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.8891141} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e17cd970-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/b2df4c71-b062-48f0-b255-9548121deebb/signaling 200 13ms","method":"POST","requestID":"e17cd970-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/b2df4c71-b062-48f0-b255-9548121deebb/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"cb0f7c748dbae73d005aa86ca302bf38","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":596,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b345ce0-a572-40a4-9b4a-9291ef758943","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b073964d-41f5-456f-8116-26c616f8d80e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.8946722} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":596,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.585082,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e17e3900-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e17e3900-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"cb0f7c748dbae73d005aa86ca302bf38"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e17e3900-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/6b345ce0-a572-40a4-9b4a-9291ef758943/signaling 200 10ms","method":"POST","requestID":"e17e3900-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/6b345ce0-a572-40a4-9b4a-9291ef758943/signaling"} gateway-1 | {"time_local":"21/Sep/2024:15:05:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"786","request_time":"0.130","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cb0f7c748dbae73d005aa86ca302bf38"} experiment-1 | {"level":"info","message":"POST /experiments? 201 125ms","method":"POST","requestID":"cb0f7c748dbae73d005aa86ca302bf38","responseTime":125,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e1800dc0-782a-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA","level":"info","message":"auth send jwt","requestID":"f3e02866a4a3e6839bd93cc7134a0558"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f3e02866a4a3e6839bd93cc7134a0558","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":597,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:03Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f3e02866a4a3e6839bd93cc7134a0558"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2df4c71-b062-48f0-b255-9548121deebb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7ae0f840-71fd-4d44-94b5-842ac3b13315","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.9046657} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":597,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.138705,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":598,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e1800dc0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e1800dc0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":598,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.597736,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f3e02866a4a3e6839bd93cc7134a0558","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931103,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f3e02866a4a3e6839bd93cc7134a0558","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e1800dc0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/b2df4c71-b062-48f0-b255-9548121deebb/signaling 200 9ms","method":"POST","requestID":"e1800dc0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/b2df4c71-b062-48f0-b255-9548121deebb/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b345ce0-a572-40a4-9b4a-9291ef758943","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b345ce0-a572-40a4-9b4a-9291ef758943","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:03.133790521Z"}]},"request_id":"a22eb808-ba78-4afe-a49a-762565351f5a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.910435} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"cb0f7c748dbae73d005aa86ca302bf38"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f3e02866a4a3e6839bd93cc7134a0558","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e181e280-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e1820990-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f3e02866a4a3e6839bd93cc7134a0558"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":599,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":599,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.698751,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:03Z"} gateway-1 | {"time_local":"21/Sep/2024:15:05:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6b345ce0-a572-40a4-9b4a-9291ef758943? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f3e02866a4a3e6839bd93cc7134a0558"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":600,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e181e280-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931103,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e181e280-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/6b345ce0-a572-40a4-9b4a-9291ef758943? 200 12ms","method":"GET","requestID":"f3e02866a4a3e6839bd93cc7134a0558","responseTime":12,"status":200,"url":"/devices/6b345ce0-a572-40a4-9b4a-9291ef758943?"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":600,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.551641,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:03Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA","level":"info","message":"auth send jwt","requestID":"743fe109c08685f1072be60099e7cc5b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"743fe109c08685f1072be60099e7cc5b","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e1820990-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931103,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e1820990-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"743fe109c08685f1072be60099e7cc5b"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b345ce0-a572-40a4-9b4a-9291ef758943","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b345ce0-a572-40a4-9b4a-9291ef758943","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:03.133790521Z"}]},"request_id":"b82ff3cf-3a8e-49c6-9df2-8046af4ca107","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.9200325} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e181e280-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":601,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":601,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.672987,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"743fe109c08685f1072be60099e7cc5b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931103,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e181e280-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"743fe109c08685f1072be60099e7cc5b","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/6b345ce0-a572-40a4-9b4a-9291ef758943? 200 13ms","method":"GET","requestID":"e181e280-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/6b345ce0-a572-40a4-9b4a-9291ef758943?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2df4c71-b062-48f0-b255-9548121deebb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2df4c71-b062-48f0-b255-9548121deebb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:03.180266568Z"}]},"request_id":"3761ad58-6851-4647-9169-b90d45b94d58","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.9243116} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e1820990-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2df4c71-b062-48f0-b255-9548121deebb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2df4c71-b062-48f0-b255-9548121deebb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:03.180266568Z"}]},"request_id":"d6880056-3dc3-4cd4-80f5-2650cd532eb7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.927842} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e1820990-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/b2df4c71-b062-48f0-b255-9548121deebb? 200 15ms","method":"GET","requestID":"e1820990-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/b2df4c71-b062-48f0-b255-9548121deebb?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"743fe109c08685f1072be60099e7cc5b","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4"},"level":"info","message":"Building connection plan","requestID":"cb0f7c748dbae73d005aa86ca302bf38"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"94150946-6143-469b-9db4-f1ddc7295db6"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"0af77f16-7991-432a-8945-140d5bd660ab"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"eb973732-c536-47e2-9099-5ce9bed040f1"}]},"level":"info","message":"Built pairwise service configurations","requestID":"cb0f7c748dbae73d005aa86ca302bf38"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"743fe109c08685f1072be60099e7cc5b"} gateway-1 | {"time_local":"21/Sep/2024:15:05:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b2df4c71-b062-48f0-b255-9548121deebb? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"743fe109c08685f1072be60099e7cc5b"} device-1 | {"level":"info","message":"GET /devices/b2df4c71-b062-48f0-b255-9548121deebb? 200 10ms","method":"GET","requestID":"743fe109c08685f1072be60099e7cc5b","responseTime":10,"status":200,"url":"/devices/b2df4c71-b062-48f0-b255-9548121deebb?"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"e184c8b0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"e184c8b0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"e184c8b0-782a-11ef-938d-0b888d58857d","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191?id=82d13660-5045-40cd-885a-1c4d063f1e9f","ws://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191?id=1f21cdba-3716-4d68-a8ec-cbc197829014"]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"cb0f7c748dbae73d005aa86ca302bf38"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"e1853de0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":602,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":602,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.642297,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e1853de0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931103,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwM30.11Yl3GEDVBIwJsvKoFVCVJTioPMd2aaFXx4M7HQZ9gA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e1853de0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"feb6c30e-7b77-47a9-8742-cc10374defd8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.9439082} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5d26de3c-2f83-461b-80e0-7f9d289fb97b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931103.944073} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e1853de0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"e1853de0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"e1853de0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/4af89f21-990a-4374-8a1d-c0a34fc7fdfc'","requestID":"e1853de0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/4af89f21-990a-4374-8a1d-c0a34fc7fdfc'","requestID":"e1853de0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"e1853de0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 22ms","method":"POST","requestID":"e1853de0-782a-11ef-88d4-5fea3f61bb98","responseTime":22,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"e1853de0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/4af89f21-990a-4374-8a1d-c0a34fc7fdfc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4af89f21-990a-4374-8a1d-c0a34fc7fdfc","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"e189f8d0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\"","requestID":"e189f8d0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"e189f8d0-782a-11ef-938d-0b888d58857d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b9e3ac92e1e7f7ec0f0ceba475816630","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b9e3ac92e1e7f7ec0f0ceba475816630","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"e18a1fe0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"82d13660-5045-40cd-885a-1c4d063f1e9f\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\"","requestID":"e18a1fe0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"e18a1fe0-782a-11ef-938d-0b888d58857d"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/4af89f21-990a-4374-8a1d-c0a34fc7fdfc"}}},"level":"info","message":"received a callback","requestID":"b9e3ac92e1e7f7ec0f0ceba475816630"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} device-1 | {"data":{"peerconnection":"4af89f21-990a-4374-8a1d-c0a34fc7fdfc","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 16ms","method":"POST","requestID":"b9e3ac92e1e7f7ec0f0ceba475816630","responseTime":16,"status":200,"url":"/callbacks/experiment"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} gateway-1 | {"time_local":"21/Sep/2024:15:05:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch","requestID":"b9e3ac92e1e7f7ec0f0ceba475816630"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} device-1 | {"data":{"peerconnection":"4af89f21-990a-4374-8a1d-c0a34fc7fdfc","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"cb0f7c748dbae73d005aa86ca302bf38"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e18f7710-782a-11ef-88d4-5fea3f61bb98"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":603,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:04Z"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b345ce0-a572-40a4-9b4a-9291ef758943","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b49ac8ef-84cb-48bb-8001-6d38c354007d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931104.0058608} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/4af89f21-990a-4374-8a1d-c0a34fc7fdfc' to 'http://localhost/callbacks/experiment'"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":603,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.551631,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:04Z"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e18f7710-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"data":{"peerconnection":"4af89f21-990a-4374-8a1d-c0a34fc7fdfc","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e18f7710-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"86c91ef4879f76f3eedc1a30e9342dfd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"86c91ef4879f76f3eedc1a30e9342dfd","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/4af89f21-990a-4374-8a1d-c0a34fc7fdfc"}}},"level":"info","message":"received a callback","requestID":"86c91ef4879f76f3eedc1a30e9342dfd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e18f7710-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/6b345ce0-a572-40a4-9b4a-9291ef758943/signaling 200 10ms","method":"POST","requestID":"e18f7710-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/6b345ce0-a572-40a4-9b4a-9291ef758943/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e1914bd0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":604,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:04Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"e19199f0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2df4c71-b062-48f0-b255-9548121deebb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7997ddcf-13ed-44d9-9bed-82e5b4da4b37","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931104.017088} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":604,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.213855,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:04Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":605,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e1914bd0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e1914bd0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4af89f21-990a-4374-8a1d-c0a34fc7fdfc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"40c9e0e7-9c64-4057-81e9-20388191ffa3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931104.0194263} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":605,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.155982,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4af89f21-990a-4374-8a1d-c0a34fc7fdfc","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e19199f0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/4af89f21-990a-4374-8a1d-c0a34fc7fdfc","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e19199f0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e1914bd0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/b2df4c71-b062-48f0-b255-9548121deebb/signaling 200 8ms","method":"POST","requestID":"e1914bd0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/b2df4c71-b062-48f0-b255-9548121deebb/signaling"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"e19199f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/4af89f21-990a-4374-8a1d-c0a34fc7fdfc 200 7ms","method":"GET","requestID":"e19199f0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/peerconnections/4af89f21-990a-4374-8a1d-c0a34fc7fdfc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 24ms","method":"POST","requestID":"86c91ef4879f76f3eedc1a30e9342dfd","responseTime":24,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch","requestID":"86c91ef4879f76f3eedc1a30e9342dfd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e1948020-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":606,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:04Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b345ce0-a572-40a4-9b4a-9291ef758943","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9c5de7e1-c337-4718-a88b-9745c1e1cfd6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931104.0390408} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":606,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.346804,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e1948020-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e1948020-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e1948020-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/6b345ce0-a572-40a4-9b4a-9291ef758943/signaling 200 8ms","method":"POST","requestID":"e1948020-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/6b345ce0-a572-40a4-9b4a-9291ef758943/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e19606c0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":607,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:04Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2df4c71-b062-48f0-b255-9548121deebb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"996449fe-2a90-43d7-94a7-5e3e9633c25f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931104.0481827} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":607,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.282836,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e19606c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e19606c0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e19606c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/b2df4c71-b062-48f0-b255-9548121deebb/signaling 200 7ms","method":"POST","requestID":"e19606c0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/devices/b2df4c71-b062-48f0-b255-9548121deebb/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNH0.R82q4MDkX-f8aCKbJt3UTRnW6JMiPk6cdamp4pXdOBE","level":"info","message":"auth send jwt","requestID":"4d89534351469770bb0f0d55117e259e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4d89534351469770bb0f0d55117e259e","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4","requestID":"4d89534351469770bb0f0d55117e259e"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":608,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:04Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":608,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.372913,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"4d89534351469770bb0f0d55117e259e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931104,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNH0.R82q4MDkX-f8aCKbJt3UTRnW6JMiPk6cdamp4pXdOBE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4d89534351469770bb0f0d55117e259e","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4","requestID":"4d89534351469770bb0f0d55117e259e"} experiment-1 | {"level":"info","message":"GET /experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4 200 15ms","method":"GET","requestID":"4d89534351469770bb0f0d55117e259e","responseTime":15,"status":200,"url":"/experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4"} gateway-1 | {"time_local":"21/Sep/2024:15:05:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4 HTTP/1.1","status": "200","body_bytes_sent":"859","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4d89534351469770bb0f0d55117e259e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNH0.R82q4MDkX-f8aCKbJt3UTRnW6JMiPk6cdamp4pXdOBE","level":"info","message":"auth send jwt","requestID":"2ab54edf6664bf99519b7b0cd0d693e0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2ab54edf6664bf99519b7b0cd0d693e0","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4","requestID":"2ab54edf6664bf99519b7b0cd0d693e0"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":609,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:04Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":609,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":2.982562,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:04Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"2ab54edf6664bf99519b7b0cd0d693e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931104,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNH0.R82q4MDkX-f8aCKbJt3UTRnW6JMiPk6cdamp4pXdOBE"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"2ab54edf6664bf99519b7b0cd0d693e0","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4"},"level":"info","message":"Attempting to finish experiment","requestID":"2ab54edf6664bf99519b7b0cd0d693e0"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"e1add480-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":610,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:04Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":610,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.995915,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:04Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4af89f21-990a-4374-8a1d-c0a34fc7fdfc","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e1add480-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/4af89f21-990a-4374-8a1d-c0a34fc7fdfc","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931104,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNH0.R82q4MDkX-f8aCKbJt3UTRnW6JMiPk6cdamp4pXdOBE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e1add480-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:05:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191?id=82d13660-5045-40cd-885a-1c4d063f1e9f HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.253","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"eb83ca64ced1020ce43401177c55a453"} gateway-1 | {"time_local":"21/Sep/2024:15:05:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191?id=1f21cdba-3716-4d68-a8ec-cbc197829014 HTTP/1.1","status": "101","body_bytes_sent":"1203023","request_time":"0.253","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"7d4dc2df6d708ba9d26486a476d0f5e8"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"82d13660-5045-40cd-885a-1c4d063f1e9f\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"82d13660-5045-40cd-885a-1c4d063f1e9f\" from room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" in room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"1f21cdba-3716-4d68-a8ec-cbc197829014\" from room \"http://localhost/rooms/70f34b40-dda6-4e1c-b5d2-bcf2bf410191\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/4af89f21-990a-4374-8a1d-c0a34fc7fdfc' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/4af89f21-990a-4374-8a1d-c0a34fc7fdfc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4af89f21-990a-4374-8a1d-c0a34fc7fdfc","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b1a7e9967cfbe745a2128413bd5b6022","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b1a7e9967cfbe745a2128413bd5b6022","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4af89f21-990a-4374-8a1d-c0a34fc7fdfc': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4af89f21-990a-4374-8a1d-c0a34fc7fdfc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"eee159cf-87ce-496f-8f89-df44405d639b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931104.2244859} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6d105d0e1ac01a29b677296b489ed87f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f686b38c-6817-439b-9ad2-44f4eda93e4e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931104.2248228} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/4af89f21-990a-4374-8a1d-c0a34fc7fdfc"}}},"level":"info","message":"received a callback","requestID":"b1a7e9967cfbe745a2128413bd5b6022"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"6d105d0e1ac01a29b677296b489ed87f","responseTime":0,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"e1add480-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/4af89f21-990a-4374-8a1d-c0a34fc7fdfc"}}},"level":"info","message":"received a callback","requestID":"6d105d0e1ac01a29b677296b489ed87f"} device-1 | {"data":{"peerconnection":"4af89f21-990a-4374-8a1d-c0a34fc7fdfc","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"e1add480-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/4af89f21-990a-4374-8a1d-c0a34fc7fdfc 204 45ms","method":"DELETE","requestID":"e1add480-782a-11ef-88d4-5fea3f61bb98","responseTime":45,"status":204,"url":"/peerconnections/4af89f21-990a-4374-8a1d-c0a34fc7fdfc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4"},"level":"info","message":"Successfully finished experiment","requestID":"2ab54edf6664bf99519b7b0cd0d693e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e1b7e6a0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":611,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:04Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b345ce0-a572-40a4-9b4a-9291ef758943","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9d57e2f8-0e16-45ea-80cf-a2af53d8c421","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931104.2733414} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":611,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.140129,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e1b7e6a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"e1b7e6a0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e1b7e6a0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F744d2f74-1cf3-4190-91fd-f030ad78bea4': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F744d2f74-1cf3-4190-91fd-f030ad78bea4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"54c0d8f8-6f49-4ebb-a200-3a712efe9696","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931104.2803435} device-1 | {"level":"info","message":"POST /devices/6b345ce0-a572-40a4-9b4a-9291ef758943/signaling 200 15ms","method":"POST","requestID":"e1b7e6a0-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/6b345ce0-a572-40a4-9b4a-9291ef758943/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"083cf576-f5e6-478b-8c33-57b996fe6490","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931104.2810762} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"2ab54edf6664bf99519b7b0cd0d693e0","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e1baa5c0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":612,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:04Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2df4c71-b062-48f0-b255-9548121deebb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e67e928b-22e0-48a1-8004-62160c760c89","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931104.2915266} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":612,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.072936,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e1baa5c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"e1baa5c0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e1baa5c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/b2df4c71-b062-48f0-b255-9548121deebb/signaling 200 15ms","method":"POST","requestID":"e1baa5c0-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/b2df4c71-b062-48f0-b255-9548121deebb/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4","requestID":"2ab54edf6664bf99519b7b0cd0d693e0"} gateway-1 | {"time_local":"21/Sep/2024:15:05:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.177","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2ab54edf6664bf99519b7b0cd0d693e0"} gateway-1 | {"time_local":"21/Sep/2024:15:05:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1437","request_time":"0.644","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"4264f212ef33fb7831d1dbe067e5d60e"} gateway-1 | {"time_local":"21/Sep/2024:15:05:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1438","request_time":"0.653","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"30a57649c5879c2103590cae607edf7a"} experiment-1 | {"level":"info","message":"DELETE /experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4 204 173ms","method":"DELETE","requestID":"2ab54edf6664bf99519b7b0cd0d693e0","responseTime":173,"status":204,"url":"/experiments/744d2f74-1cf3-4190-91fd-f030ad78bea4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"b1a7e9967cfbe745a2128413bd5b6022","responseTime":130,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"b1a7e9967cfbe745a2128413bd5b6022"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"6d105d0e1ac01a29b677296b489ed87f","responseTime":130,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.134","http_referrer":"","http_user_agent":"node-fetch","requestID":"6d105d0e1ac01a29b677296b489ed87f"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/6b345ce0-a572-40a4-9b4a-9291ef758943' closed"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNH0.R82q4MDkX-f8aCKbJt3UTRnW6JMiPk6cdamp4pXdOBE","level":"info","message":"auth send jwt","requestID":"3c0314ed8e01182a85534b54cf6fd8a0"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"3c0314ed8e01182a85534b54cf6fd8a0","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3c0314ed8e01182a85534b54cf6fd8a0"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":613,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:04Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":613,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.923779,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"3c0314ed8e01182a85534b54cf6fd8a0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931104,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNH0.R82q4MDkX-f8aCKbJt3UTRnW6JMiPk6cdamp4pXdOBE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3c0314ed8e01182a85534b54cf6fd8a0","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/b2df4c71-b062-48f0-b255-9548121deebb' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e3a3426-287a-4109-92ee-067b60e32b1e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"80666474-1e46-48be-8455-7898d7cdeee9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931104.3823342} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3c0314ed8e01182a85534b54cf6fd8a0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"50a971ec-d0fa-4e15-8fca-4c5d97b085eb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931104.3871915} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"3c0314ed8e01182a85534b54cf6fd8a0","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e3a3426-287a-4109-92ee-067b60e32b1e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"5afd89e5-970a-4ee1-a647-0c48da0582e3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931104.397913} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a11bf212-045d-4115-96d0-16a4222875c8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931104.3981676} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"3c0314ed8e01182a85534b54cf6fd8a0","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e3a3426-287a-4109-92ee-067b60e32b1e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e3a3426-287a-4109-92ee-067b60e32b1e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:04.397881017Z"}]},"request_id":"67dfea01-3c4c-4b0e-8d57-6c813103d71d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931104.4027941} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3c0314ed8e01182a85534b54cf6fd8a0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3c0314ed8e01182a85534b54cf6fd8a0"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"3c0314ed8e01182a85534b54cf6fd8a0","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3c0314ed8e01182a85534b54cf6fd8a0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNH0.R82q4MDkX-f8aCKbJt3UTRnW6JMiPk6cdamp4pXdOBE","level":"info","message":"auth send jwt","requestID":"4bd9c2164c0acd9ac9e88d9ca4be56cd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4bd9c2164c0acd9ac9e88d9ca4be56cd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4bd9c2164c0acd9ac9e88d9ca4be56cd"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":614,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:04Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":614,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.876159,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"4bd9c2164c0acd9ac9e88d9ca4be56cd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931104,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNH0.R82q4MDkX-f8aCKbJt3UTRnW6JMiPk6cdamp4pXdOBE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4bd9c2164c0acd9ac9e88d9ca4be56cd","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46e78a92-77f5-4aab-a9fa-2a95b7085e54","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3f133657-f516-4bb7-acfd-75cf499b08eb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931104.4284704} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4bd9c2164c0acd9ac9e88d9ca4be56cd","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"13bef385-8b73-48a7-99e3-9dd1104ed438","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931104.4333665} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"4bd9c2164c0acd9ac9e88d9ca4be56cd","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46e78a92-77f5-4aab-a9fa-2a95b7085e54","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"2591622d-7ae1-4c56-8547-4c0b314aa8ff","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931104.4494889} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"61330891-1634-4887-8b23-fa048c8854b4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931104.4497414} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"4bd9c2164c0acd9ac9e88d9ca4be56cd","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46e78a92-77f5-4aab-a9fa-2a95b7085e54","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46e78a92-77f5-4aab-a9fa-2a95b7085e54","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:04.449458242Z"}]},"request_id":"c8fcd080-c2f1-46c5-be0c-1b94b38da4eb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931104.4544005} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4bd9c2164c0acd9ac9e88d9ca4be56cd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4bd9c2164c0acd9ac9e88d9ca4be56cd"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"4bd9c2164c0acd9ac9e88d9ca4be56cd","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4bd9c2164c0acd9ac9e88d9ca4be56cd"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a1e5e3acffe9280b932bcafcb4d2a549","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a1e5e3acffe9280b932bcafcb4d2a549","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7e3a3426-287a-4109-92ee-067b60e32b1e/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.005","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a1e5e3acffe9280b932bcafcb4d2a549"} device-1 | {"level":"info","message":"OPTIONS /devices/7e3a3426-287a-4109-92ee-067b60e32b1e/websocket 200 1ms","method":"OPTIONS","requestID":"a1e5e3acffe9280b932bcafcb4d2a549","responseTime":1,"status":200,"url":"/devices/7e3a3426-287a-4109-92ee-067b60e32b1e/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNn0.hOWSlkHuYeqQ9E2-Pn4raUe19i94raRUcYlwhnWWaSk","level":"info","message":"auth send jwt","requestID":"eb897d60c3f8f26e0f5bc0598d7dfbbe"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"eb897d60c3f8f26e0f5bc0598d7dfbbe","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"eb897d60c3f8f26e0f5bc0598d7dfbbe"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":615,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":615,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.281904,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"eb897d60c3f8f26e0f5bc0598d7dfbbe","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931106,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNn0.hOWSlkHuYeqQ9E2-Pn4raUe19i94raRUcYlwhnWWaSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"eb897d60c3f8f26e0f5bc0598d7dfbbe","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3b3cf5e54c9477a4d69613d76d95eb5a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3b3cf5e54c9477a4d69613d76d95eb5a","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3b3cf5e54c9477a4d69613d76d95eb5a"} device-1 | {"level":"info","message":"OPTIONS /devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54/websocket 200 1ms","method":"OPTIONS","requestID":"3b3cf5e54c9477a4d69613d76d95eb5a","responseTime":1,"status":200,"url":"/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNn0.hOWSlkHuYeqQ9E2-Pn4raUe19i94raRUcYlwhnWWaSk","level":"info","message":"auth send jwt","requestID":"15a3ce8d2efa9986605c598609e729fc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"eb897d60c3f8f26e0f5bc0598d7dfbbe"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"15a3ce8d2efa9986605c598609e729fc","responseTime":3,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7e3a3426-287a-4109-92ee-067b60e32b1e/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.031","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"eb897d60c3f8f26e0f5bc0598d7dfbbe"} device-1 | {"level":"info","message":"POST /devices/7e3a3426-287a-4109-92ee-067b60e32b1e/websocket 200 24ms","method":"POST","requestID":"eb897d60c3f8f26e0f5bc0598d7dfbbe","responseTime":24,"status":200,"url":"/devices/7e3a3426-287a-4109-92ee-067b60e32b1e/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"15a3ce8d2efa9986605c598609e729fc"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":616,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":616,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.859773,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"15a3ce8d2efa9986605c598609e729fc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931106,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNn0.hOWSlkHuYeqQ9E2-Pn4raUe19i94raRUcYlwhnWWaSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"15a3ce8d2efa9986605c598609e729fc","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"15a3ce8d2efa9986605c598609e729fc"} gateway-1 | {"time_local":"21/Sep/2024:15:05:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.032","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"15a3ce8d2efa9986605c598609e729fc"} device-1 | {"level":"info","message":"POST /devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54/websocket 200 28ms","method":"POST","requestID":"15a3ce8d2efa9986605c598609e729fc","responseTime":28,"status":200,"url":"/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7f2ab608edd90c20624f14cd40cdd58d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7f2ab608edd90c20624f14cd40cdd58d","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"device 'http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54' connected"} gateway-1 | {"time_local":"21/Sep/2024:15:05:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7e3a3426-287a-4109-92ee-067b60e32b1e? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"7f2ab608edd90c20624f14cd40cdd58d"} device-1 | {"level":"info","message":"OPTIONS /devices/7e3a3426-287a-4109-92ee-067b60e32b1e? 200 1ms","method":"OPTIONS","requestID":"7f2ab608edd90c20624f14cd40cdd58d","responseTime":1,"status":200,"url":"/devices/7e3a3426-287a-4109-92ee-067b60e32b1e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNn0.hOWSlkHuYeqQ9E2-Pn4raUe19i94raRUcYlwhnWWaSk","level":"info","message":"auth send jwt","requestID":"7d6c91b52c8e91fffe3bc184cd80e1d1"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7d6c91b52c8e91fffe3bc184cd80e1d1","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"7d6c91b52c8e91fffe3bc184cd80e1d1"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":617,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":617,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.687725,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"7d6c91b52c8e91fffe3bc184cd80e1d1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931106,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNn0.hOWSlkHuYeqQ9E2-Pn4raUe19i94raRUcYlwhnWWaSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7d6c91b52c8e91fffe3bc184cd80e1d1","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dae66d1385cb0ba5c818e0f4f103b276","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"dae66d1385cb0ba5c818e0f4f103b276","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"dae66d1385cb0ba5c818e0f4f103b276"} device-1 | {"level":"info","message":"OPTIONS /devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54? 200 1ms","method":"OPTIONS","requestID":"dae66d1385cb0ba5c818e0f4f103b276","responseTime":1,"status":200,"url":"/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e3a3426-287a-4109-92ee-067b60e32b1e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e3a3426-287a-4109-92ee-067b60e32b1e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:04.397881017Z"}]},"request_id":"c47dfeaa-4ae6-4174-bf19-10a7ef50de7c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.4969707} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNn0.hOWSlkHuYeqQ9E2-Pn4raUe19i94raRUcYlwhnWWaSk","level":"info","message":"auth send jwt","requestID":"d95106a985523bf6f4f1a6ea06ebfec5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7d6c91b52c8e91fffe3bc184cd80e1d1","responseTime":2,"status":200,"url":"/relations/query"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d95106a985523bf6f4f1a6ea06ebfec5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d95106a985523bf6f4f1a6ea06ebfec5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"76295eed-2376-4c24-b9a4-96536e22287b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.5011988} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":618,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"7d6c91b52c8e91fffe3bc184cd80e1d1","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":618,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.740721,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d95106a985523bf6f4f1a6ea06ebfec5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931106,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNn0.hOWSlkHuYeqQ9E2-Pn4raUe19i94raRUcYlwhnWWaSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d95106a985523bf6f4f1a6ea06ebfec5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e3a3426-287a-4109-92ee-067b60e32b1e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e3a3426-287a-4109-92ee-067b60e32b1e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:04.397881017Z"}]},"request_id":"80bbf95b-87eb-4ad0-bfe6-c13d6e708612","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.5178564} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7d6c91b52c8e91fffe3bc184cd80e1d1","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46e78a92-77f5-4aab-a9fa-2a95b7085e54","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46e78a92-77f5-4aab-a9fa-2a95b7085e54","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:04.449458242Z"}]},"request_id":"6d74d9bf-30ea-4b11-8615-904d9c577e9f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.5188677} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"7d6c91b52c8e91fffe3bc184cd80e1d1"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d95106a985523bf6f4f1a6ea06ebfec5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"PATCH /devices/7e3a3426-287a-4109-92ee-067b60e32b1e? 200 33ms","method":"PATCH","requestID":"7d6c91b52c8e91fffe3bc184cd80e1d1","responseTime":33,"status":200,"url":"/devices/7e3a3426-287a-4109-92ee-067b60e32b1e?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7e3a3426-287a-4109-92ee-067b60e32b1e? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.037","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"7d6c91b52c8e91fffe3bc184cd80e1d1"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f4d82b17-32a0-4530-9fd9-e3d0dadad3f0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.524727} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"d95106a985523bf6f4f1a6ea06ebfec5","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46e78a92-77f5-4aab-a9fa-2a95b7085e54","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46e78a92-77f5-4aab-a9fa-2a95b7085e54","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:04.449458242Z"}]},"request_id":"77d4e3fd-4c78-42fa-b493-96a6663b255e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.536057} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d95106a985523bf6f4f1a6ea06ebfec5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d95106a985523bf6f4f1a6ea06ebfec5"} gateway-1 | {"time_local":"21/Sep/2024:15:05:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.044","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d95106a985523bf6f4f1a6ea06ebfec5"} device-1 | {"level":"info","message":"PATCH /devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54? 200 38ms","method":"PATCH","requestID":"d95106a985523bf6f4f1a6ea06ebfec5","responseTime":38,"status":200,"url":"/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNn0.hOWSlkHuYeqQ9E2-Pn4raUe19i94raRUcYlwhnWWaSk","level":"info","message":"auth send jwt","requestID":"ef709804fd6d258cd04e2db49b4b84ef"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ef709804fd6d258cd04e2db49b4b84ef","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ef709804fd6d258cd04e2db49b4b84ef"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":619,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":619,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.435542,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ef709804fd6d258cd04e2db49b4b84ef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931106,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNn0.hOWSlkHuYeqQ9E2-Pn4raUe19i94raRUcYlwhnWWaSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ef709804fd6d258cd04e2db49b4b84ef","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e3a3426-287a-4109-92ee-067b60e32b1e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e3a3426-287a-4109-92ee-067b60e32b1e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:04.397881017Z"}]},"request_id":"69901eaf-441f-492a-a8af-ca06de61a1f4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.5612564} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ef709804fd6d258cd04e2db49b4b84ef","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ef709804fd6d258cd04e2db49b4b84ef"} device-1 | {"level":"info","message":"GET /devices/7e3a3426-287a-4109-92ee-067b60e32b1e? 200 13ms","method":"GET","requestID":"ef709804fd6d258cd04e2db49b4b84ef","responseTime":13,"status":200,"url":"/devices/7e3a3426-287a-4109-92ee-067b60e32b1e?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7e3a3426-287a-4109-92ee-067b60e32b1e? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ef709804fd6d258cd04e2db49b4b84ef"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNn0.hOWSlkHuYeqQ9E2-Pn4raUe19i94raRUcYlwhnWWaSk","level":"info","message":"auth send jwt","requestID":"187deab5ff204795416ef5d9ea6f7fc6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"187deab5ff204795416ef5d9ea6f7fc6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"187deab5ff204795416ef5d9ea6f7fc6"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":620,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":620,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.277365,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"187deab5ff204795416ef5d9ea6f7fc6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931106,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNn0.hOWSlkHuYeqQ9E2-Pn4raUe19i94raRUcYlwhnWWaSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"187deab5ff204795416ef5d9ea6f7fc6","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46e78a92-77f5-4aab-a9fa-2a95b7085e54","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46e78a92-77f5-4aab-a9fa-2a95b7085e54","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:04.449458242Z"}]},"request_id":"4c8356e3-5bb5-4450-b6ca-1446a75a614c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.5800474} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"187deab5ff204795416ef5d9ea6f7fc6","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"187deab5ff204795416ef5d9ea6f7fc6"} gateway-1 | {"time_local":"21/Sep/2024:15:05:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"187deab5ff204795416ef5d9ea6f7fc6"} device-1 | {"level":"info","message":"GET /devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54? 200 12ms","method":"GET","requestID":"187deab5ff204795416ef5d9ea6f7fc6","responseTime":12,"status":200,"url":"/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNn0.hOWSlkHuYeqQ9E2-Pn4raUe19i94raRUcYlwhnWWaSk","level":"info","message":"auth send jwt","requestID":"7ac2c670864ee3342d4578a58c61d866"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7ac2c670864ee3342d4578a58c61d866","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"7ac2c670864ee3342d4578a58c61d866"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":621,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":621,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.114281,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"7ac2c670864ee3342d4578a58c61d866","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931106,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNn0.hOWSlkHuYeqQ9E2-Pn4raUe19i94raRUcYlwhnWWaSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7ac2c670864ee3342d4578a58c61d866","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e"},"level":"info","message":"Attempting to run experiment","requestID":"7ac2c670864ee3342d4578a58c61d866"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e"},"level":"info","message":"Attempting to book experiment","requestID":"7ac2c670864ee3342d4578a58c61d866"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e"},"level":"info","message":"Successfully booked experiment","requestID":"7ac2c670864ee3342d4578a58c61d866"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e31f8cf0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e31fb400-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":622,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":623,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":622,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.550225,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e31f8cf0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931106,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNn0.hOWSlkHuYeqQ9E2-Pn4raUe19i94raRUcYlwhnWWaSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e31f8cf0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":623,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.21911,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e31fb400-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931106,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNn0.hOWSlkHuYeqQ9E2-Pn4raUe19i94raRUcYlwhnWWaSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e31fb400-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e3a3426-287a-4109-92ee-067b60e32b1e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e3a3426-287a-4109-92ee-067b60e32b1e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:04.397881017Z"}]},"request_id":"55ac0c3a-0858-4ab7-9b24-cb00792c6f75","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.6315517} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e31f8cf0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46e78a92-77f5-4aab-a9fa-2a95b7085e54","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46e78a92-77f5-4aab-a9fa-2a95b7085e54","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:04.449458242Z"}]},"request_id":"0fe7252e-0b68-4045-a8db-4cae3de179a8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.632481} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e31fb400-782a-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e31f8cf0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/7e3a3426-287a-4109-92ee-067b60e32b1e? 200 13ms","method":"GET","requestID":"e31f8cf0-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/7e3a3426-287a-4109-92ee-067b60e32b1e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e31fb400-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54? 200 13ms","method":"GET","requestID":"e31fb400-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e"},"level":"info","message":"Setting up experiment","requestID":"7ac2c670864ee3342d4578a58c61d866"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"7ac2c670864ee3342d4578a58c61d866"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e"},"level":"info","message":"Successfully locked booking for experiment","requestID":"7ac2c670864ee3342d4578a58c61d866"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"7ac2c670864ee3342d4578a58c61d866"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"7ac2c670864ee3342d4578a58c61d866"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e"},"level":"info","message":"Attempting to update booking for experiment","requestID":"7ac2c670864ee3342d4578a58c61d866"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e"},"level":"info","message":"Successfully updated booking for experiment","requestID":"7ac2c670864ee3342d4578a58c61d866"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e"},"level":"info","message":"Successfully set up experiment","requestID":"7ac2c670864ee3342d4578a58c61d866"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e3297800-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e329c620-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e32a1440-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":624,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":624,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.308948,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:06Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e"},"level":"info","message":"Successfully running experiment","requestID":"7ac2c670864ee3342d4578a58c61d866"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e3297800-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931106,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNn0.hOWSlkHuYeqQ9E2-Pn4raUe19i94raRUcYlwhnWWaSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"e3297800-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":625,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":625,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.537422,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e329c620-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931106,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNn0.hOWSlkHuYeqQ9E2-Pn4raUe19i94raRUcYlwhnWWaSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"e329c620-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":626,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e3a3426-287a-4109-92ee-067b60e32b1e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a1203196-5710-4bc3-ac5b-b8d0f54036fa","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.7045643} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":626,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.273152,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e32a1440-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"e32a1440-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e3a3426-287a-4109-92ee-067b60e32b1e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e3a3426-287a-4109-92ee-067b60e32b1e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:04.397881017Z"}]},"request_id":"d5edc0cc-831a-4315-8689-63c74e7660aa","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.7077124} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46e78a92-77f5-4aab-a9fa-2a95b7085e54","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46e78a92-77f5-4aab-a9fa-2a95b7085e54","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:04.449458242Z"}]},"request_id":"4ce943b6-184b-4b79-a62f-8b0c331ae8ea","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.7092443} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"e3297800-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e329c620-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e32a1440-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/7e3a3426-287a-4109-92ee-067b60e32b1e/signaling 200 26ms","method":"POST","requestID":"e32a1440-782a-11ef-88d4-5fea3f61bb98","responseTime":26,"status":200,"url":"/devices/7e3a3426-287a-4109-92ee-067b60e32b1e/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e3297800-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/7e3a3426-287a-4109-92ee-067b60e32b1e? 200 31ms","method":"GET","requestID":"e3297800-782a-11ef-88d4-5fea3f61bb98","responseTime":31,"status":200,"url":"/devices/7e3a3426-287a-4109-92ee-067b60e32b1e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e329c620-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54? 200 30ms","method":"GET","requestID":"e329c620-782a-11ef-88d4-5fea3f61bb98","responseTime":30,"status":200,"url":"/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e32e5a00-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e32ecf30-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc5a3cf68-112a-4098-9ef2-23735ad6f79e#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc5a3cf68-112a-4098-9ef2-23735ad6f79e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"a5a07478-c763-4149-8dcb-40e688af047d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.723274} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e028e001-8ef6-4757-b105-1a5606f80426","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.7238162} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":627,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"7ac2c670864ee3342d4578a58c61d866","responseTime":26,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":627,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.140801,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":628,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46e78a92-77f5-4aab-a9fa-2a95b7085e54","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"418e497e-550c-4e35-ae72-c70e31b09dc6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.7272935} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e32e5a00-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"e32e5a00-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e3a3426-287a-4109-92ee-067b60e32b1e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"422574c6-fe82-45cf-814e-dc7b9270af15","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.73291} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":628,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.07578,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:06Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e32e5a00-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e32ecf30-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"POST /devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54/signaling 200 15ms","method":"POST","requestID":"e32e5a00-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"e32ecf30-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e32ecf30-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/7e3a3426-287a-4109-92ee-067b60e32b1e/signaling 200 16ms","method":"POST","requestID":"e32ecf30-782a-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/7e3a3426-287a-4109-92ee-067b60e32b1e/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"7ac2c670864ee3342d4578a58c61d866"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e331b560-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"level":"info","message":"POST /experiments? 201 152ms","method":"POST","requestID":"7ac2c670864ee3342d4578a58c61d866","responseTime":152,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1288","request_time":"0.158","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7ac2c670864ee3342d4578a58c61d866"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":629,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46e78a92-77f5-4aab-a9fa-2a95b7085e54","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bb0335f8-126b-43eb-bb0f-656434dc5c03","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.7483587} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":629,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.882438,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e331b560-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNn0.hOWSlkHuYeqQ9E2-Pn4raUe19i94raRUcYlwhnWWaSk","level":"info","message":"auth send jwt","requestID":"85470e233a90d2eb46fc35899299f2b3"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e331b560-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"85470e233a90d2eb46fc35899299f2b3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"85470e233a90d2eb46fc35899299f2b3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e331b560-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54/signaling 200 12ms","method":"POST","requestID":"e331b560-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":630,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:06Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"7ac2c670864ee3342d4578a58c61d866"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":630,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.3411,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"85470e233a90d2eb46fc35899299f2b3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931106,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNn0.hOWSlkHuYeqQ9E2-Pn4raUe19i94raRUcYlwhnWWaSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"85470e233a90d2eb46fc35899299f2b3","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e3342660-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e3344d70-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":631,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":631,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.195842,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":632,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e3342660-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931106,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNn0.hOWSlkHuYeqQ9E2-Pn4raUe19i94raRUcYlwhnWWaSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"e3342660-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":632,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.88105,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e3344d70-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931106,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNn0.hOWSlkHuYeqQ9E2-Pn4raUe19i94raRUcYlwhnWWaSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"e3344d70-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e3a3426-287a-4109-92ee-067b60e32b1e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e3a3426-287a-4109-92ee-067b60e32b1e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:04.397881017Z"}]},"request_id":"c9ca7c77-648b-4fb9-85ea-7fb2be9d8e06","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.7655137} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"85470e233a90d2eb46fc35899299f2b3","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"85470e233a90d2eb46fc35899299f2b3"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e3a3426-287a-4109-92ee-067b60e32b1e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e3a3426-287a-4109-92ee-067b60e32b1e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:04.397881017Z"}]},"request_id":"c63b4544-df5a-488c-bc0c-b55afe43a5f0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.771103} gateway-1 | {"time_local":"21/Sep/2024:15:05:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7e3a3426-287a-4109-92ee-067b60e32b1e? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"85470e233a90d2eb46fc35899299f2b3"} device-1 | {"level":"info","message":"GET /devices/7e3a3426-287a-4109-92ee-067b60e32b1e? 200 20ms","method":"GET","requestID":"85470e233a90d2eb46fc35899299f2b3","responseTime":20,"status":200,"url":"/devices/7e3a3426-287a-4109-92ee-067b60e32b1e?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e3342660-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46e78a92-77f5-4aab-a9fa-2a95b7085e54","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46e78a92-77f5-4aab-a9fa-2a95b7085e54","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:04.449458242Z"}]},"request_id":"ddd643c0-f087-4f3b-9d67-7a9a072bbb43","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.7723453} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e3344d70-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNn0.hOWSlkHuYeqQ9E2-Pn4raUe19i94raRUcYlwhnWWaSk","level":"info","message":"auth send jwt","requestID":"eeafc82a6337cd6c532d0ba28ca1ac15"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e3342660-782a-11ef-88d4-5fea3f61bb98"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"eeafc82a6337cd6c532d0ba28ca1ac15","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"GET /devices/7e3a3426-287a-4109-92ee-067b60e32b1e? 200 19ms","method":"GET","requestID":"e3342660-782a-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/7e3a3426-287a-4109-92ee-067b60e32b1e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e3344d70-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54? 200 19ms","method":"GET","requestID":"e3344d70-782a-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"eeafc82a6337cd6c532d0ba28ca1ac15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e"},"level":"info","message":"Building connection plan","requestID":"7ac2c670864ee3342d4578a58c61d866"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"f5902c94-b646-4865-9708-1558b6af7726"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"86f95e51-b0a0-4b6f-8b47-8a4d1e39746a"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"055030a5-7e8e-4322-a366-e21e9af2fef8"}]},"level":"info","message":"Built pairwise service configurations","requestID":"7ac2c670864ee3342d4578a58c61d866"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"7ac2c670864ee3342d4578a58c61d866"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"e337a8d0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":633,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":633,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.946167,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":634,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"eeafc82a6337cd6c532d0ba28ca1ac15","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931106,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNn0.hOWSlkHuYeqQ9E2-Pn4raUe19i94raRUcYlwhnWWaSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"eeafc82a6337cd6c532d0ba28ca1ac15","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":634,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.00478,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e337a8d0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931106,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwNn0.hOWSlkHuYeqQ9E2-Pn4raUe19i94raRUcYlwhnWWaSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e337a8d0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46e78a92-77f5-4aab-a9fa-2a95b7085e54","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46e78a92-77f5-4aab-a9fa-2a95b7085e54","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:04.449458242Z"}]},"request_id":"851831e4-c9dd-45f6-86de-9acac9a4b1b5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.789426} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"eeafc82a6337cd6c532d0ba28ca1ac15","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"eeafc82a6337cd6c532d0ba28ca1ac15"} device-1 | {"level":"info","message":"GET /devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54? 200 16ms","method":"GET","requestID":"eeafc82a6337cd6c532d0ba28ca1ac15","responseTime":16,"status":200,"url":"/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"eeafc82a6337cd6c532d0ba28ca1ac15"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"911bbf2c-7a85-468f-9f0b-a03566719816","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.7983813} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fb9c400b-e233-4c6d-8e13-19fa6e7008a5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.7986465} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"e337a8d0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"e337a8d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"e337a8d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/328d0d45-a4fa-4600-b521-d6a32c82edc2'","requestID":"e337a8d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/328d0d45-a4fa-4600-b521-d6a32c82edc2'","requestID":"e337a8d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"e337a8d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 32ms","method":"POST","requestID":"e337a8d0-782a-11ef-88d4-5fea3f61bb98","responseTime":32,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"e337a8d0-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"7ac2c670864ee3342d4578a58c61d866"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e340f7a0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":635,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e3a3426-287a-4109-92ee-067b60e32b1e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1d1e0a64-e52a-42ef-a19c-35eb8b4af3c4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.8461742} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":635,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.434698,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e340f7a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e340f7a0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e340f7a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/7e3a3426-287a-4109-92ee-067b60e32b1e/signaling 200 8ms","method":"POST","requestID":"e340f7a0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/7e3a3426-287a-4109-92ee-067b60e32b1e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e3427e40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"device":"46e78a92-77f5-4aab-a9fa-2a95b7085e54","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"46e78a92-77f5-4aab-a9fa-2a95b7085e54","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":636,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46e78a92-77f5-4aab-a9fa-2a95b7085e54","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"48462a42-8275-4554-89d3-0eebfa48f9d9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.8571563} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":636,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.726735,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e3427e40-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e3427e40-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e3427e40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54/signaling 200 10ms","method":"POST","requestID":"e3427e40-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54/signaling"} device-1 | {"device":"7e3a3426-287a-4109-92ee-067b60e32b1e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"7e3a3426-287a-4109-92ee-067b60e32b1e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 9190201601880420743 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:/jH2\r\na=ice-pwd:oJ3cYht1juAN5m3x/ATkBso2\r\na=ice-options:trickle\r\na=fingerprint:sha-256 B6:93:DD:52:5F:EE:0E:83:BA:EA:73:D8:6B:96:7A:E6:44:D0:BA:EE:43:7A:A9:36:62:AF:B4:56:68:86:A0:EC\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"46e78a92-77f5-4aab-a9fa-2a95b7085e54","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 1133954242289278482 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:L6AC\r\na=ice-pwd:Yjc3vjCz/5AuW/lXK4XLoRTw\r\na=ice-options:trickle\r\na=fingerprint:sha-256 46:FA:D6:B4:CF:F2:05:85:CE:44:BB:96:49:D2:3D:E9:C1:DB:9F:13:29:BE:C5:9D:5B:62:26:40:27:83:75:C6\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"7e3a3426-287a-4109-92ee-067b60e32b1e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1524541301 1 udp 2113937151 cc5d53b9-9f3e-42ea-9691-45113ae4ce97.local 54878 typ host generation 0 ufrag L6AC network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"7e3a3426-287a-4109-92ee-067b60e32b1e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3388278374 1 udp 1677729535 141.24.211.56 54878 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag L6AC network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"7e3a3426-287a-4109-92ee-067b60e32b1e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e'"} device-1 | {"content":{"candidate":"candidate:4022739346 1 udp 2113937151 ed347260-d42c-4e38-8dad-1c07f2ffc974.local 34563 typ host generation 0 ufrag /jH2 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"46e78a92-77f5-4aab-a9fa-2a95b7085e54","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1810582509 1 udp 1677729535 141.24.211.56 34563 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag /jH2 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"46e78a92-77f5-4aab-a9fa-2a95b7085e54","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54'"} device-1 | {"device":"46e78a92-77f5-4aab-a9fa-2a95b7085e54","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/328d0d45-a4fa-4600-b521-d6a32c82edc2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"328d0d45-a4fa-4600-b521-d6a32c82edc2","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7e3a3426-287a-4109-92ee-067b60e32b1e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"7e3a3426-287a-4109-92ee-067b60e32b1e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"46e78a92-77f5-4aab-a9fa-2a95b7085e54","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9b7c2839f75996271fe32186d8d09a9a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9b7c2839f75996271fe32186d8d09a9a","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/328d0d45-a4fa-4600-b521-d6a32c82edc2"}}},"level":"info","message":"received a callback","requestID":"9b7c2839f75996271fe32186d8d09a9a"} device-1 | {"device":"46e78a92-77f5-4aab-a9fa-2a95b7085e54","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"7e3a3426-287a-4109-92ee-067b60e32b1e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 4ms","method":"POST","requestID":"9b7c2839f75996271fe32186d8d09a9a","responseTime":4,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"9b7c2839f75996271fe32186d8d09a9a"} device-1 | {"device":"7e3a3426-287a-4109-92ee-067b60e32b1e","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"328d0d45-a4fa-4600-b521-d6a32c82edc2","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"328d0d45-a4fa-4600-b521-d6a32c82edc2","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/328d0d45-a4fa-4600-b521-d6a32c82edc2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"328d0d45-a4fa-4600-b521-d6a32c82edc2","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f7b4cf0d8c6ee25d74699e497b28ddcf","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f7b4cf0d8c6ee25d74699e497b28ddcf","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/328d0d45-a4fa-4600-b521-d6a32c82edc2"}}},"level":"info","message":"received a callback","requestID":"f7b4cf0d8c6ee25d74699e497b28ddcf"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"e34eda50-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":637,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F328d0d45-a4fa-4600-b521-d6a32c82edc2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"83f040dc-71c1-43df-be4e-736a4dab4345","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.9372468} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":637,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.244602,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/328d0d45-a4fa-4600-b521-d6a32c82edc2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e34eda50-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/328d0d45-a4fa-4600-b521-d6a32c82edc2","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e34eda50-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"e34eda50-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/328d0d45-a4fa-4600-b521-d6a32c82edc2 200 8ms","method":"GET","requestID":"e34eda50-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/peerconnections/328d0d45-a4fa-4600-b521-d6a32c82edc2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 24ms","method":"POST","requestID":"f7b4cf0d8c6ee25d74699e497b28ddcf","responseTime":24,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch","requestID":"f7b4cf0d8c6ee25d74699e497b28ddcf"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e3520ea0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":638,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e3a3426-287a-4109-92ee-067b60e32b1e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8cbd75c3-f3f7-417d-978c-a85f97deb2a3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.9585173} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":638,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.46572,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e3520ea0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e3520ea0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e3520ea0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/7e3a3426-287a-4109-92ee-067b60e32b1e/signaling 200 8ms","method":"POST","requestID":"e3520ea0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/7e3a3426-287a-4109-92ee-067b60e32b1e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e3539540-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":639,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46e78a92-77f5-4aab-a9fa-2a95b7085e54","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"05032b59-a069-41fc-bf85-7b8ff8619cc3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931106.9679077} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":639,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.26915,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e3539540-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e3539540-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e3539540-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54/signaling 200 7ms","method":"POST","requestID":"e3539540-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwN30.2K3zX-8QpFBDmd1drJtt8rMzAnKxGXnzwnqkqcTzKds","level":"info","message":"auth send jwt","requestID":"53e70a6283414cf599b4383fb9904ecd"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"53e70a6283414cf599b4383fb9904ecd","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e","requestID":"53e70a6283414cf599b4383fb9904ecd"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":640,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:07Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":640,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.357965,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"53e70a6283414cf599b4383fb9904ecd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931107,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwN30.2K3zX-8QpFBDmd1drJtt8rMzAnKxGXnzwnqkqcTzKds"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"53e70a6283414cf599b4383fb9904ecd","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e","requestID":"53e70a6283414cf599b4383fb9904ecd"} experiment-1 | {"level":"info","message":"GET /experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e 200 9ms","method":"GET","requestID":"53e70a6283414cf599b4383fb9904ecd","responseTime":9,"status":200,"url":"/experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e"} gateway-1 | {"time_local":"21/Sep/2024:15:05:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e HTTP/1.1","status": "200","body_bytes_sent":"1361","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"53e70a6283414cf599b4383fb9904ecd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwN30.2K3zX-8QpFBDmd1drJtt8rMzAnKxGXnzwnqkqcTzKds","level":"info","message":"auth send jwt","requestID":"c103950eee273198bee6181cdc03385b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c103950eee273198bee6181cdc03385b","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e","requestID":"c103950eee273198bee6181cdc03385b"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":641,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:07Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":641,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.280015,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:07Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c103950eee273198bee6181cdc03385b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931107,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwN30.2K3zX-8QpFBDmd1drJtt8rMzAnKxGXnzwnqkqcTzKds"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c103950eee273198bee6181cdc03385b","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e"},"level":"info","message":"Attempting to finish experiment","requestID":"c103950eee273198bee6181cdc03385b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"e35f5510-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":642,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:07Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":642,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.684447,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:07Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/328d0d45-a4fa-4600-b521-d6a32c82edc2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e35f5510-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/328d0d45-a4fa-4600-b521-d6a32c82edc2","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931107,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwN30.2K3zX-8QpFBDmd1drJtt8rMzAnKxGXnzwnqkqcTzKds"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e35f5510-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/328d0d45-a4fa-4600-b521-d6a32c82edc2","device":"7e3a3426-287a-4109-92ee-067b60e32b1e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/328d0d45-a4fa-4600-b521-d6a32c82edc2","device":"46e78a92-77f5-4aab-a9fa-2a95b7085e54","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/328d0d45-a4fa-4600-b521-d6a32c82edc2' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/328d0d45-a4fa-4600-b521-d6a32c82edc2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"328d0d45-a4fa-4600-b521-d6a32c82edc2","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F328d0d45-a4fa-4600-b521-d6a32c82edc2': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F328d0d45-a4fa-4600-b521-d6a32c82edc2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"8f03897b-2396-448a-8ef9-129d1be95fc3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931107.0568302} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b21543cde40057dc91121a5b5627c8d6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b21543cde40057dc91121a5b5627c8d6","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b602b13c-ea15-49df-9408-56ccdec63d5f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931107.0571024} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"e35f5510-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5468dd191392514f7946ceb206e5afc4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5468dd191392514f7946ceb206e5afc4","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/328d0d45-a4fa-4600-b521-d6a32c82edc2"}}},"level":"info","message":"received a callback","requestID":"b21543cde40057dc91121a5b5627c8d6"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/328d0d45-a4fa-4600-b521-d6a32c82edc2"}}},"level":"info","message":"received a callback","requestID":"5468dd191392514f7946ceb206e5afc4"} device-1 | {"data":{"peerconnection":"328d0d45-a4fa-4600-b521-d6a32c82edc2","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"e35f5510-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/328d0d45-a4fa-4600-b521-d6a32c82edc2 204 35ms","method":"DELETE","requestID":"e35f5510-782a-11ef-88d4-5fea3f61bb98","responseTime":35,"status":204,"url":"/peerconnections/328d0d45-a4fa-4600-b521-d6a32c82edc2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e"},"level":"info","message":"Successfully finished experiment","requestID":"c103950eee273198bee6181cdc03385b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e3679270-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":643,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:07Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e3a3426-287a-4109-92ee-067b60e32b1e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"167bfc66-503d-428b-8e41-7387cdd34872","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931107.0988133} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":643,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.172505,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e3679270-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e3679270-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e3679270-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/7e3a3426-287a-4109-92ee-067b60e32b1e/signaling 200 8ms","method":"POST","requestID":"e3679270-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/7e3a3426-287a-4109-92ee-067b60e32b1e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e3691910-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc5a3cf68-112a-4098-9ef2-23735ad6f79e': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc5a3cf68-112a-4098-9ef2-23735ad6f79e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"6fc1ab6a-b312-4933-a334-8a28befeb143","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931107.1070848} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2f33e4b7-398f-4633-bf92-63a0c0e03ac9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931107.1075203} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"c103950eee273198bee6181cdc03385b","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46e78a92-77f5-4aab-a9fa-2a95b7085e54","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"087f2543-f760-4def-9672-b6207f265cfd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931107.1099045} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":644,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:07Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":644,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.294473,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e3691910-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e3691910-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e3691910-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54/signaling 200 9ms","method":"POST","requestID":"e3691910-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e","requestID":"c103950eee273198bee6181cdc03385b"} gateway-1 | {"time_local":"21/Sep/2024:15:05:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.147","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c103950eee273198bee6181cdc03385b"} experiment-1 | {"level":"info","message":"DELETE /experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e 204 146ms","method":"DELETE","requestID":"c103950eee273198bee6181cdc03385b","responseTime":146,"status":204,"url":"/experiments/c5a3cf68-112a-4098-9ef2-23735ad6f79e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 120ms","method":"POST","requestID":"b21543cde40057dc91121a5b5627c8d6","responseTime":120,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.124","http_referrer":"","http_user_agent":"node-fetch","requestID":"b21543cde40057dc91121a5b5627c8d6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 120ms","method":"POST","requestID":"5468dd191392514f7946ceb206e5afc4","responseTime":120,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.125","http_referrer":"","http_user_agent":"node-fetch","requestID":"5468dd191392514f7946ceb206e5afc4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwN30.2K3zX-8QpFBDmd1drJtt8rMzAnKxGXnzwnqkqcTzKds","level":"info","message":"auth send jwt","requestID":"454d3a6828a96653a5bd34c7572ed082"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"454d3a6828a96653a5bd34c7572ed082","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"454d3a6828a96653a5bd34c7572ed082"} gateway-1 | {"time_local":"21/Sep/2024:15:05:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3318","request_time":"0.719","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"cb25820bea701aff993a46d52ea77109"} gateway-1 | {"time_local":"21/Sep/2024:15:05:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3320","request_time":"0.753","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e786f1aca7657925e700143ac947d509"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":645,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:07Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":645,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.891883,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:07Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"454d3a6828a96653a5bd34c7572ed082","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931107,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwN30.2K3zX-8QpFBDmd1drJtt8rMzAnKxGXnzwnqkqcTzKds"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"454d3a6828a96653a5bd34c7572ed082","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/46e78a92-77f5-4aab-a9fa-2a95b7085e54' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74b4ed27-fa7a-41ee-a2ce-fc0983984461","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a63b9906-76cc-4c9e-89af-d1439f2da5e7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931107.2091668} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"454d3a6828a96653a5bd34c7572ed082","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"602668f6-d9e9-46e8-b964-9e6425d65239","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931107.2137554} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/7e3a3426-287a-4109-92ee-067b60e32b1e' closed"} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"454d3a6828a96653a5bd34c7572ed082","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74b4ed27-fa7a-41ee-a2ce-fc0983984461","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"5d59db9c-ea87-4959-a1ed-6c450e437391","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931107.2230935} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f57df008-e38a-404d-bb2f-f838dc088ff7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931107.22325} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"454d3a6828a96653a5bd34c7572ed082","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74b4ed27-fa7a-41ee-a2ce-fc0983984461","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74b4ed27-fa7a-41ee-a2ce-fc0983984461","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:07.223060894Z"}]},"request_id":"4a09ca27-0089-4e7e-ace2-09774e5a3f9c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931107.2270381} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"454d3a6828a96653a5bd34c7572ed082","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"454d3a6828a96653a5bd34c7572ed082"} gateway-1 | {"time_local":"21/Sep/2024:15:05:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"454d3a6828a96653a5bd34c7572ed082"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"454d3a6828a96653a5bd34c7572ed082","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwN30.2K3zX-8QpFBDmd1drJtt8rMzAnKxGXnzwnqkqcTzKds","level":"info","message":"auth send jwt","requestID":"70ba67fc12f5f79d44c8f41d1bd5ccd7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"70ba67fc12f5f79d44c8f41d1bd5ccd7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"70ba67fc12f5f79d44c8f41d1bd5ccd7"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":646,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:07Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":646,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.733896,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:07Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"70ba67fc12f5f79d44c8f41d1bd5ccd7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931107,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwN30.2K3zX-8QpFBDmd1drJtt8rMzAnKxGXnzwnqkqcTzKds"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"70ba67fc12f5f79d44c8f41d1bd5ccd7","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa45dba4b-13df-40f6-b2c1-46df7ff356d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"92f682e0-eac2-4e07-a471-b3bf69c498fd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931107.2569475} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"70ba67fc12f5f79d44c8f41d1bd5ccd7","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"51e54774-efc0-4e29-b768-d094fcf483d3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931107.2608066} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"70ba67fc12f5f79d44c8f41d1bd5ccd7","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa45dba4b-13df-40f6-b2c1-46df7ff356d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"f3843698-7d18-42a5-bf7b-73b7324338a4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931107.2723362} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cded8daf-1015-44c8-8d9a-16d6f2e4ac7d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931107.2724884} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"70ba67fc12f5f79d44c8f41d1bd5ccd7","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa45dba4b-13df-40f6-b2c1-46df7ff356d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa45dba4b-13df-40f6-b2c1-46df7ff356d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:07.272316665Z"}]},"request_id":"c27506f6-7455-41aa-8cf8-9f97dd632f7b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931107.2768424} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"70ba67fc12f5f79d44c8f41d1bd5ccd7","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"70ba67fc12f5f79d44c8f41d1bd5ccd7"} gateway-1 | {"time_local":"21/Sep/2024:15:05:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"70ba67fc12f5f79d44c8f41d1bd5ccd7"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"70ba67fc12f5f79d44c8f41d1bd5ccd7","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fe1fbefb5f0bdcf152ad10b041cb03c6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fe1fbefb5f0bdcf152ad10b041cb03c6","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"fe1fbefb5f0bdcf152ad10b041cb03c6"} device-1 | {"level":"info","message":"OPTIONS /devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5/websocket 200 1ms","method":"OPTIONS","requestID":"fe1fbefb5f0bdcf152ad10b041cb03c6","responseTime":1,"status":200,"url":"/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA","level":"info","message":"auth send jwt","requestID":"5e521157a60910980a740400112cac8c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5e521157a60910980a740400112cac8c","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5e521157a60910980a740400112cac8c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":647,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":647,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.088994,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"5e521157a60910980a740400112cac8c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931109,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5e521157a60910980a740400112cac8c","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"010024df16d6a846699b1bd9aa21371a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"010024df16d6a846699b1bd9aa21371a","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"010024df16d6a846699b1bd9aa21371a"} device-1 | {"level":"info","message":"OPTIONS /devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461/websocket 200 1ms","method":"OPTIONS","requestID":"010024df16d6a846699b1bd9aa21371a","responseTime":1,"status":200,"url":"/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA","level":"info","message":"auth send jwt","requestID":"4e0880646e1b1b8b581bf09c144e51d2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4e0880646e1b1b8b581bf09c144e51d2","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4e0880646e1b1b8b581bf09c144e51d2"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":648,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":648,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.241894,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5e521157a60910980a740400112cac8c"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"4e0880646e1b1b8b581bf09c144e51d2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931109,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA"} device-1 | {"level":"info","message":"POST /devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5/websocket 200 25ms","method":"POST","requestID":"5e521157a60910980a740400112cac8c","responseTime":25,"status":200,"url":"/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:05:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.032","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5e521157a60910980a740400112cac8c"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4e0880646e1b1b8b581bf09c144e51d2","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4e0880646e1b1b8b581bf09c144e51d2"} gateway-1 | {"time_local":"21/Sep/2024:15:05:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4e0880646e1b1b8b581bf09c144e51d2"} device-1 | {"level":"info","message":"POST /devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461/websocket 200 17ms","method":"POST","requestID":"4e0880646e1b1b8b581bf09c144e51d2","responseTime":17,"status":200,"url":"/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e30394db829349005d46dfa30f0cd6eb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e30394db829349005d46dfa30f0cd6eb","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.002","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e30394db829349005d46dfa30f0cd6eb"} device-1 | {"level":"info","message":"OPTIONS /devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5? 200 1ms","method":"OPTIONS","requestID":"e30394db829349005d46dfa30f0cd6eb","responseTime":1,"status":200,"url":"/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"077ada554fb5b7c94ddcec86b2d3834e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"077ada554fb5b7c94ddcec86b2d3834e","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"077ada554fb5b7c94ddcec86b2d3834e"} device-1 | {"level":"info","message":"OPTIONS /devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461? 200 1ms","method":"OPTIONS","requestID":"077ada554fb5b7c94ddcec86b2d3834e","responseTime":1,"status":200,"url":"/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA","level":"info","message":"auth send jwt","requestID":"b49ba83bf410c0ed26321048c795845f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b49ba83bf410c0ed26321048c795845f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b49ba83bf410c0ed26321048c795845f"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":649,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":649,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.693742,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA","level":"info","message":"auth send jwt","requestID":"c580db34919f727b503e029fb4efc553"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b49ba83bf410c0ed26321048c795845f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931109,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c580db34919f727b503e029fb4efc553","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b49ba83bf410c0ed26321048c795845f","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c580db34919f727b503e029fb4efc553"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":650,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":650,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.264775,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c580db34919f727b503e029fb4efc553","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931109,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c580db34919f727b503e029fb4efc553","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa45dba4b-13df-40f6-b2c1-46df7ff356d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa45dba4b-13df-40f6-b2c1-46df7ff356d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:07.272316665Z"}]},"request_id":"ce03c3de-c0ad-403f-801f-ffb0377b460c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.3457353} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b49ba83bf410c0ed26321048c795845f","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74b4ed27-fa7a-41ee-a2ce-fc0983984461","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74b4ed27-fa7a-41ee-a2ce-fc0983984461","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:07.223060894Z"}]},"request_id":"d13aaa74-2d03-4b57-823c-bf1092c49abb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.349816} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c580db34919f727b503e029fb4efc553","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cace17cd-5b25-45d1-a2ac-2d141715a24c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.3525007} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b49ba83bf410c0ed26321048c795845f","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d4192b62-8e59-466e-9475-fad2e1bb3033","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.3575587} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c580db34919f727b503e029fb4efc553","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa45dba4b-13df-40f6-b2c1-46df7ff356d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa45dba4b-13df-40f6-b2c1-46df7ff356d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:07.272316665Z"}]},"request_id":"a9ca65a6-fdbb-490b-b94d-8f85b54372f3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.3687758} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b49ba83bf410c0ed26321048c795845f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b49ba83bf410c0ed26321048c795845f"} gateway-1 | {"time_local":"21/Sep/2024:15:05:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.048","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b49ba83bf410c0ed26321048c795845f"} device-1 | {"level":"info","message":"PATCH /devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5? 200 43ms","method":"PATCH","requestID":"b49ba83bf410c0ed26321048c795845f","responseTime":43,"status":200,"url":"/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74b4ed27-fa7a-41ee-a2ce-fc0983984461","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74b4ed27-fa7a-41ee-a2ce-fc0983984461","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:07.223060894Z"}]},"request_id":"3811d8df-eead-41e2-b582-7c2bd1e63574","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.380555} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c580db34919f727b503e029fb4efc553","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c580db34919f727b503e029fb4efc553"} device-1 | {"level":"info","message":"PATCH /devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461? 200 48ms","method":"PATCH","requestID":"c580db34919f727b503e029fb4efc553","responseTime":48,"status":200,"url":"/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.053","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c580db34919f727b503e029fb4efc553"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA","level":"info","message":"auth send jwt","requestID":"5c7e6b98cd80760012c83a0de3c86e88"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5c7e6b98cd80760012c83a0de3c86e88","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5c7e6b98cd80760012c83a0de3c86e88"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":651,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":651,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.882577,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"5c7e6b98cd80760012c83a0de3c86e88","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931109,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5c7e6b98cd80760012c83a0de3c86e88","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74b4ed27-fa7a-41ee-a2ce-fc0983984461","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74b4ed27-fa7a-41ee-a2ce-fc0983984461","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:07.223060894Z"}]},"request_id":"121d2576-d461-443d-abf4-f77be1aa02bb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.4081147} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5c7e6b98cd80760012c83a0de3c86e88","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5c7e6b98cd80760012c83a0de3c86e88"} gateway-1 | {"time_local":"21/Sep/2024:15:05:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5c7e6b98cd80760012c83a0de3c86e88"} device-1 | {"level":"info","message":"GET /devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461? 200 16ms","method":"GET","requestID":"5c7e6b98cd80760012c83a0de3c86e88","responseTime":16,"status":200,"url":"/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA","level":"info","message":"auth send jwt","requestID":"311e503b6736aea1051334c68a7a0275"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"311e503b6736aea1051334c68a7a0275","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"311e503b6736aea1051334c68a7a0275"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":652,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":652,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.643628,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"311e503b6736aea1051334c68a7a0275","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931109,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"311e503b6736aea1051334c68a7a0275","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa45dba4b-13df-40f6-b2c1-46df7ff356d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa45dba4b-13df-40f6-b2c1-46df7ff356d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:07.272316665Z"}]},"request_id":"a699a494-a031-487f-9249-5f65ba0a1606","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.4317064} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"311e503b6736aea1051334c68a7a0275","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"311e503b6736aea1051334c68a7a0275"} gateway-1 | {"time_local":"21/Sep/2024:15:05:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"311e503b6736aea1051334c68a7a0275"} device-1 | {"level":"info","message":"GET /devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5? 200 19ms","method":"GET","requestID":"311e503b6736aea1051334c68a7a0275","responseTime":19,"status":200,"url":"/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA","level":"info","message":"auth send jwt","requestID":"824e6391d55434d11af37657589ad15c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"824e6391d55434d11af37657589ad15c","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"824e6391d55434d11af37657589ad15c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":653,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":653,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.547165,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"824e6391d55434d11af37657589ad15c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931109,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"824e6391d55434d11af37657589ad15c","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2"},"level":"info","message":"Attempting to run experiment","requestID":"824e6391d55434d11af37657589ad15c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2"},"level":"info","message":"Attempting to book experiment","requestID":"824e6391d55434d11af37657589ad15c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2"},"level":"info","message":"Successfully booked experiment","requestID":"824e6391d55434d11af37657589ad15c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e4d52c30-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e4d55340-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":654,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":654,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.937177,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":655,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e4d52c30-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931109,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e4d52c30-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":655,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.659275,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e4d55340-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931109,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e4d55340-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74b4ed27-fa7a-41ee-a2ce-fc0983984461","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74b4ed27-fa7a-41ee-a2ce-fc0983984461","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:07.223060894Z"}]},"request_id":"c82e01b3-1955-4ee7-882a-2630430dc164","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.4999824} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e4d52c30-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa45dba4b-13df-40f6-b2c1-46df7ff356d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa45dba4b-13df-40f6-b2c1-46df7ff356d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:07.272316665Z"}]},"request_id":"13f4f81c-9d8b-4e16-9f45-5c4ffe003360","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.500917} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e4d55340-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e4d52c30-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461? 200 14ms","method":"GET","requestID":"e4d52c30-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e4d55340-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5? 200 14ms","method":"GET","requestID":"e4d55340-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2"},"level":"info","message":"Setting up experiment","requestID":"824e6391d55434d11af37657589ad15c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"824e6391d55434d11af37657589ad15c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2"},"level":"info","message":"Successfully locked booking for experiment","requestID":"824e6391d55434d11af37657589ad15c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"824e6391d55434d11af37657589ad15c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"824e6391d55434d11af37657589ad15c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2"},"level":"info","message":"Attempting to update booking for experiment","requestID":"824e6391d55434d11af37657589ad15c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2"},"level":"info","message":"Successfully updated booking for experiment","requestID":"824e6391d55434d11af37657589ad15c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2"},"level":"info","message":"Successfully set up experiment","requestID":"824e6391d55434d11af37657589ad15c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e4dfda90-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e4e001a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e4e04fc0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":656,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":656,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.729287,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":657,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2"},"level":"info","message":"Successfully running experiment","requestID":"824e6391d55434d11af37657589ad15c"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e4dfda90-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931109,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e4dfda90-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":657,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.795772,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e4e001a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931109,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e4e001a0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":658,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":658,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.440191,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74b4ed27-fa7a-41ee-a2ce-fc0983984461","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6b030e53-2240-412a-ab96-07d97dd3e1c0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.5700583} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e4e04fc0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"e4e04fc0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74b4ed27-fa7a-41ee-a2ce-fc0983984461","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74b4ed27-fa7a-41ee-a2ce-fc0983984461","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:07.223060894Z"}]},"request_id":"174da9f3-25cb-441a-b541-5373fe5024f6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.5724995} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa45dba4b-13df-40f6-b2c1-46df7ff356d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa45dba4b-13df-40f6-b2c1-46df7ff356d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:07.272316665Z"}]},"request_id":"076f7cfd-342a-4270-902a-6f7fa34d5417","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.573581} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e4dfda90-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e4e001a0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e4e04fc0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461/signaling 200 15ms","method":"POST","requestID":"e4e04fc0-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e4dfda90-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461? 200 19ms","method":"GET","requestID":"e4dfda90-782a-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e4e001a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5? 200 21ms","method":"GET","requestID":"e4e001a0-782a-11ef-88d4-5fea3f61bb98","responseTime":21,"status":200,"url":"/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e4e35d00-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e4e38410-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":659,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":659,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.04259,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":660,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa45dba4b-13df-40f6-b2c1-46df7ff356d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6f74185c-cbda-4ccc-bf14-2d6ff52283e4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.5892568} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3e7b61f0-9f12-4399-b187-d75b5e7890d2#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3e7b61f0-9f12-4399-b187-d75b5e7890d2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"c380a2d3-270a-412c-a302-8b01b263bba9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.5894668} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f883aa36-72bf-434b-9c6d-1d77907485cc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.589665} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e4e35d00-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"e4e35d00-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"824e6391d55434d11af37657589ad15c","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":660,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.916707,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74b4ed27-fa7a-41ee-a2ce-fc0983984461","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9b62d299-d372-4574-84c8-56ed83c8b44a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.5929585} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e4e38410-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e4e38410-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e4e35d00-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5/signaling 200 13ms","method":"POST","requestID":"e4e35d00-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e4e38410-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461/signaling 200 13ms","method":"POST","requestID":"e4e38410-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"824e6391d55434d11af37657589ad15c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e4e64330-782a-11ef-88d4-5fea3f61bb98"} gateway-1 | {"time_local":"21/Sep/2024:15:05:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1288","request_time":"0.162","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"824e6391d55434d11af37657589ad15c"} experiment-1 | {"level":"info","message":"POST /experiments? 201 156ms","method":"POST","requestID":"824e6391d55434d11af37657589ad15c","responseTime":156,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":661,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA","level":"info","message":"auth send jwt","requestID":"8e7f2d0973438086f1dcd2dc86d66220"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa45dba4b-13df-40f6-b2c1-46df7ff356d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f6637ee2-adf3-4c3f-931d-5a19f1cbb755","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.6090777} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8e7f2d0973438086f1dcd2dc86d66220","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":661,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.773322,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8e7f2d0973438086f1dcd2dc86d66220"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e4e64330-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e4e64330-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":662,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e4e64330-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5/signaling 200 10ms","method":"POST","requestID":"e4e64330-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"824e6391d55434d11af37657589ad15c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":662,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.805629,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e4e817f0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"8e7f2d0973438086f1dcd2dc86d66220","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931109,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8e7f2d0973438086f1dcd2dc86d66220","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e4e83f00-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":663,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":664,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":663,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.207948,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":664,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.076431,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e4e817f0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931109,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e4e817f0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e4e83f00-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931109,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e4e83f00-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74b4ed27-fa7a-41ee-a2ce-fc0983984461","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74b4ed27-fa7a-41ee-a2ce-fc0983984461","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:07.223060894Z"}]},"request_id":"0dd82d04-1839-4334-8e46-2f379d04cd30","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.6204288} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8e7f2d0973438086f1dcd2dc86d66220","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74b4ed27-fa7a-41ee-a2ce-fc0983984461","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74b4ed27-fa7a-41ee-a2ce-fc0983984461","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:07.223060894Z"}]},"request_id":"9df5c655-ac83-4664-a8fe-7ebed3804f55","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.6240337} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e4e817f0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa45dba4b-13df-40f6-b2c1-46df7ff356d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa45dba4b-13df-40f6-b2c1-46df7ff356d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:07.272316665Z"}]},"request_id":"20d08a0a-4daa-4d1b-8340-ba519ddab1c4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.6250975} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e4e83f00-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8e7f2d0973438086f1dcd2dc86d66220"} gateway-1 | {"time_local":"21/Sep/2024:15:05:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8e7f2d0973438086f1dcd2dc86d66220"} device-1 | {"level":"info","message":"GET /devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461? 200 17ms","method":"GET","requestID":"8e7f2d0973438086f1dcd2dc86d66220","responseTime":17,"status":200,"url":"/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e4e817f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461? 200 17ms","method":"GET","requestID":"e4e817f0-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e4e83f00-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5? 200 17ms","method":"GET","requestID":"e4e83f00-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA","level":"info","message":"auth send jwt","requestID":"367431b133a9faf744a5b81c645de7ef"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2"},"level":"info","message":"Building connection plan","requestID":"824e6391d55434d11af37657589ad15c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"367431b133a9faf744a5b81c645de7ef","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"e06dd7a9-f14e-457e-bd85-9b6e7bc113fe"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"0ec185ed-dd53-457c-a953-f9617b7d81bd"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"a11ea77d-050a-4c5f-a079-91cead7611a7"}]},"level":"info","message":"Built pairwise service configurations","requestID":"824e6391d55434d11af37657589ad15c"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"824e6391d55434d11af37657589ad15c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"367431b133a9faf744a5b81c645de7ef"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"e4eb4c40-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":665,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":665,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.75214,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":666,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"367431b133a9faf744a5b81c645de7ef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931109,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"367431b133a9faf744a5b81c645de7ef","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":666,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.510929,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e4eb4c40-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931109,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e4eb4c40-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa45dba4b-13df-40f6-b2c1-46df7ff356d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa45dba4b-13df-40f6-b2c1-46df7ff356d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:07.272316665Z"}]},"request_id":"75d11a86-db80-4932-959f-295132e4ce41","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.642154} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"367431b133a9faf744a5b81c645de7ef","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"367431b133a9faf744a5b81c645de7ef"} gateway-1 | {"time_local":"21/Sep/2024:15:05:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"367431b133a9faf744a5b81c645de7ef"} device-1 | {"level":"info","message":"GET /devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5? 200 11ms","method":"GET","requestID":"367431b133a9faf744a5b81c645de7ef","responseTime":11,"status":200,"url":"/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"288f9a07-8cfe-4d7a-a6bf-314ef28b752c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.6475668} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"12567615-e57f-4c5b-90e6-3024c2cfc2d2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.647831} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"e4eb4c40-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"e4eb4c40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"e4eb4c40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/a2208a2e-5f60-4245-9695-ffbf5f4a6702'","requestID":"e4eb4c40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/a2208a2e-5f60-4245-9695-ffbf5f4a6702'","requestID":"e4eb4c40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"e4eb4c40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 24ms","method":"POST","requestID":"e4eb4c40-782a-11ef-88d4-5fea3f61bb98","responseTime":24,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"e4eb4c40-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"824e6391d55434d11af37657589ad15c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e4f3b0b0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":667,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74b4ed27-fa7a-41ee-a2ce-fc0983984461","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6960936a-8e2a-462e-96fc-b73e237bf265","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.6951256} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":667,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.08533,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e4f3b0b0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e4f3b0b0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e4f3b0b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461/signaling 200 8ms","method":"POST","requestID":"e4f3b0b0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e4f53750-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"device":"74b4ed27-fa7a-41ee-a2ce-fc0983984461","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"74b4ed27-fa7a-41ee-a2ce-fc0983984461","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":668,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa45dba4b-13df-40f6-b2c1-46df7ff356d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"72d667db-e9c6-45e2-b624-89b822e2ad1c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.7063494} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":668,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.709265,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e4f53750-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e4f53750-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e4f53750-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5/signaling 200 9ms","method":"POST","requestID":"e4f53750-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5/signaling"} device-1 | {"device":"a45dba4b-13df-40f6-b2c1-46df7ff356d5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"a45dba4b-13df-40f6-b2c1-46df7ff356d5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 7350477754717172821 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:VVpF\r\na=ice-pwd:shunjICGMc4/0STxPPuVoAyc\r\na=ice-options:trickle\r\na=fingerprint:sha-256 4C:7A:7C:94:2C:3B:B4:9A:84:80:2C:AB:E0:DB:2B:56:86:59:66:A2:D9:4A:4D:66:9E:8A:F6:7F:DD:4B:CD:23\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"74b4ed27-fa7a-41ee-a2ce-fc0983984461","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 1004654348992275498 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:Ukfk\r\na=ice-pwd:xpCPSgDEt9Noz8xzTexWVhV/\r\na=ice-options:trickle\r\na=fingerprint:sha-256 13:B2:6B:DB:FF:6B:0F:7E:2B:0C:D2:8A:5D:24:B5:7A:5E:06:41:0A:AC:B5:92:AE:01:81:36:08:5A:E5:BD:A4\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"a45dba4b-13df-40f6-b2c1-46df7ff356d5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:4019035461 1 udp 2113937151 04aeb887-a64a-4c4a-ae65-9988b56af76c.local 35291 typ host generation 0 ufrag Ukfk network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a45dba4b-13df-40f6-b2c1-46df7ff356d5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5'"} device-1 | {"content":{"candidate":"candidate:2091269206 1 udp 1677729535 141.24.211.56 35291 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag Ukfk network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a45dba4b-13df-40f6-b2c1-46df7ff356d5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5'"} device-1 | {"content":{"candidate":"candidate:1492523006 1 udp 2113937151 08387a7e-4cbe-4530-b8a5-babb0e4ea0c0.local 56751 typ host generation 0 ufrag VVpF network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"74b4ed27-fa7a-41ee-a2ce-fc0983984461","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3705372033 1 udp 1677729535 141.24.211.56 56751 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag VVpF network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"74b4ed27-fa7a-41ee-a2ce-fc0983984461","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461'"} device-1 | {"device":"74b4ed27-fa7a-41ee-a2ce-fc0983984461","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"a45dba4b-13df-40f6-b2c1-46df7ff356d5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a2208a2e-5f60-4245-9695-ffbf5f4a6702' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a2208a2e-5f60-4245-9695-ffbf5f4a6702","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"919a9dba1cd07432698f3bbaa04fc4e3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} device-1 | {"device":"a45dba4b-13df-40f6-b2c1-46df7ff356d5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"74b4ed27-fa7a-41ee-a2ce-fc0983984461","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"919a9dba1cd07432698f3bbaa04fc4e3","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/a2208a2e-5f60-4245-9695-ffbf5f4a6702"}}},"level":"info","message":"received a callback","requestID":"919a9dba1cd07432698f3bbaa04fc4e3"} device-1 | {"device":"74b4ed27-fa7a-41ee-a2ce-fc0983984461","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"a45dba4b-13df-40f6-b2c1-46df7ff356d5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"919a9dba1cd07432698f3bbaa04fc4e3","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"919a9dba1cd07432698f3bbaa04fc4e3"} device-1 | {"device":"a45dba4b-13df-40f6-b2c1-46df7ff356d5","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"a2208a2e-5f60-4245-9695-ffbf5f4a6702","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"a2208a2e-5f60-4245-9695-ffbf5f4a6702","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a2208a2e-5f60-4245-9695-ffbf5f4a6702' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a2208a2e-5f60-4245-9695-ffbf5f4a6702","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cd218818210866b184c85d82bfa565ca","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"cd218818210866b184c85d82bfa565ca","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/a2208a2e-5f60-4245-9695-ffbf5f4a6702"}}},"level":"info","message":"received a callback","requestID":"cd218818210866b184c85d82bfa565ca"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"e501e180-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":669,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa2208a2e-5f60-4245-9695-ffbf5f4a6702","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d74476c4-0c13-40e6-8750-db73c1520e7f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.7883282} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":669,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.015216,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a2208a2e-5f60-4245-9695-ffbf5f4a6702","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e501e180-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/a2208a2e-5f60-4245-9695-ffbf5f4a6702","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e501e180-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"e501e180-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/a2208a2e-5f60-4245-9695-ffbf5f4a6702 200 7ms","method":"GET","requestID":"e501e180-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/peerconnections/a2208a2e-5f60-4245-9695-ffbf5f4a6702"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 29ms","method":"POST","requestID":"cd218818210866b184c85d82bfa565ca","responseTime":29,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"cd218818210866b184c85d82bfa565ca"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e505d920-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":670,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa45dba4b-13df-40f6-b2c1-46df7ff356d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"be57da05-a4ee-42f1-bcc9-57f7ac84504d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.8145783} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":670,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.197321,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e505d920-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e505d920-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e505d920-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5/signaling 200 8ms","method":"POST","requestID":"e505d920-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e5075fc0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":671,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74b4ed27-fa7a-41ee-a2ce-fc0983984461","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"df61d05c-d911-4245-b5df-6643c52aa1cf","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.8236575} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":671,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.108255,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e5075fc0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e5075fc0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e5075fc0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461/signaling 200 7ms","method":"POST","requestID":"e5075fc0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA","level":"info","message":"auth send jwt","requestID":"fef4f4a04c6a6dcfdaace3710e774bb3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fef4f4a04c6a6dcfdaace3710e774bb3","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2","requestID":"fef4f4a04c6a6dcfdaace3710e774bb3"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":672,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":672,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.946233,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fef4f4a04c6a6dcfdaace3710e774bb3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931109,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fef4f4a04c6a6dcfdaace3710e774bb3","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2","requestID":"fef4f4a04c6a6dcfdaace3710e774bb3"} gateway-1 | {"time_local":"21/Sep/2024:15:05:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2 HTTP/1.1","status": "200","body_bytes_sent":"1361","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fef4f4a04c6a6dcfdaace3710e774bb3"} experiment-1 | {"level":"info","message":"GET /experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2 200 8ms","method":"GET","requestID":"fef4f4a04c6a6dcfdaace3710e774bb3","responseTime":8,"status":200,"url":"/experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA","level":"info","message":"auth send jwt","requestID":"5327b7361b4669b1ade0151dd3ffdc37"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5327b7361b4669b1ade0151dd3ffdc37","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2","requestID":"5327b7361b4669b1ade0151dd3ffdc37"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":673,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":673,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.379961,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"5327b7361b4669b1ade0151dd3ffdc37","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931109,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5327b7361b4669b1ade0151dd3ffdc37","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2"},"level":"info","message":"Attempting to finish experiment","requestID":"5327b7361b4669b1ade0151dd3ffdc37"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"e5123530-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":674,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":674,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.72727,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a2208a2e-5f60-4245-9695-ffbf5f4a6702","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e5123530-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/a2208a2e-5f60-4245-9695-ffbf5f4a6702","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931109,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEwOX0.b5i0FY5UfImmSD8j2ukLN3Pa8NFUUfvNY37dXFW2WkA"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"e5123530-782a-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/a2208a2e-5f60-4245-9695-ffbf5f4a6702","device":"a45dba4b-13df-40f6-b2c1-46df7ff356d5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/a2208a2e-5f60-4245-9695-ffbf5f4a6702","device":"74b4ed27-fa7a-41ee-a2ce-fc0983984461","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a2208a2e-5f60-4245-9695-ffbf5f4a6702' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/a2208a2e-5f60-4245-9695-ffbf5f4a6702' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a2208a2e-5f60-4245-9695-ffbf5f4a6702","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa2208a2e-5f60-4245-9695-ffbf5f4a6702': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa2208a2e-5f60-4245-9695-ffbf5f4a6702","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"d22cd797-ca6a-4c89-becb-97dd65730015","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.9059324} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4cfd99e9-b4b7-415c-a8af-4f6488db261c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.9061074} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1a6dc0ae2cf9c2129e9dd5caa11d53f4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1a6dc0ae2cf9c2129e9dd5caa11d53f4","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"e5123530-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ee0729f5d051f700b6390574f54a5b34","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a2208a2e-5f60-4245-9695-ffbf5f4a6702"}}},"level":"info","message":"received a callback","requestID":"1a6dc0ae2cf9c2129e9dd5caa11d53f4"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"ee0729f5d051f700b6390574f54a5b34","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a2208a2e-5f60-4245-9695-ffbf5f4a6702"}}},"level":"info","message":"received a callback","requestID":"ee0729f5d051f700b6390574f54a5b34"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"e5123530-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/a2208a2e-5f60-4245-9695-ffbf5f4a6702 204 34ms","method":"DELETE","requestID":"e5123530-782a-11ef-88d4-5fea3f61bb98","responseTime":34,"status":204,"url":"/peerconnections/a2208a2e-5f60-4245-9695-ffbf5f4a6702"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2"},"level":"info","message":"Successfully finished experiment","requestID":"5327b7361b4669b1ade0151dd3ffdc37"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e519d650-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":675,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa45dba4b-13df-40f6-b2c1-46df7ff356d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ce9f3bf3-d67c-487e-98b7-8d6bec780551","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.947883} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":675,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.088883,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e519d650-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"e519d650-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e519d650-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5/signaling 200 12ms","method":"POST","requestID":"e519d650-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e51bf930-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3e7b61f0-9f12-4399-b187-d75b5e7890d2': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3e7b61f0-9f12-4399-b187-d75b5e7890d2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"bce900ec-0cd4-41fd-aefa-e4b3da071be7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.9564667} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a8fd9262-3382-4044-93ca-4b87e7632fda","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.956655} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"5327b7361b4669b1ade0151dd3ffdc37","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":676,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74b4ed27-fa7a-41ee-a2ce-fc0983984461","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6a21221b-da0a-4587-9015-0bddc75a34ae","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931109.961161} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":676,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.174021,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e51bf930-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e51bf930-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e51bf930-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461/signaling 200 10ms","method":"POST","requestID":"e51bf930-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2","requestID":"5327b7361b4669b1ade0151dd3ffdc37"} gateway-1 | {"time_local":"21/Sep/2024:15:05:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.148","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5327b7361b4669b1ade0151dd3ffdc37"} experiment-1 | {"level":"info","message":"DELETE /experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2 204 146ms","method":"DELETE","requestID":"5327b7361b4669b1ade0151dd3ffdc37","responseTime":146,"status":204,"url":"/experiments/3e7b61f0-9f12-4399-b187-d75b5e7890d2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 118ms","method":"POST","requestID":"1a6dc0ae2cf9c2129e9dd5caa11d53f4","responseTime":118,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.120","http_referrer":"","http_user_agent":"node-fetch","requestID":"1a6dc0ae2cf9c2129e9dd5caa11d53f4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 117ms","method":"POST","requestID":"ee0729f5d051f700b6390574f54a5b34","responseTime":117,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.121","http_referrer":"","http_user_agent":"node-fetch","requestID":"ee0729f5d051f700b6390574f54a5b34"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMH0.D5ycLpTWKYEfvYPPD0EMb4P2zw-oZ3jmC0M6daxybMo","level":"info","message":"auth send jwt","requestID":"a4c852b3e0fcf1fb97e162a9fb277258"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a4c852b3e0fcf1fb97e162a9fb277258","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a4c852b3e0fcf1fb97e162a9fb277258"} gateway-1 | {"time_local":"21/Sep/2024:15:05:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3320","request_time":"0.732","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"cadcfb709df24e490921c292aaaf86e1"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":677,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:10Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":677,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.663463,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:10Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a4c852b3e0fcf1fb97e162a9fb277258","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931110,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMH0.D5ycLpTWKYEfvYPPD0EMb4P2zw-oZ3jmC0M6daxybMo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a4c852b3e0fcf1fb97e162a9fb277258","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:05:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3318","request_time":"0.750","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b64da38bf0eada37efc8c968b7e620bd"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/74b4ed27-fa7a-41ee-a2ce-fc0983984461' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffe370ed4-7b26-4535-a792-d0200e1b16e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0cc2a117-8565-459e-835b-a805e7bc83d3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931110.050621} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a4c852b3e0fcf1fb97e162a9fb277258","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7b278471-aa8e-4b15-8a7d-777e8120f776","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931110.055252} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"a4c852b3e0fcf1fb97e162a9fb277258","responseTime":3,"status":200,"url":"/relations/update"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a45dba4b-13df-40f6-b2c1-46df7ff356d5' closed"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffe370ed4-7b26-4535-a792-d0200e1b16e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"1e0e3654-9564-4e97-8b76-2655e47f5a27","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931110.065389} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"23391499-f1f7-4b65-a516-208b7921af68","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931110.0654511} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"a4c852b3e0fcf1fb97e162a9fb277258","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffe370ed4-7b26-4535-a792-d0200e1b16e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffe370ed4-7b26-4535-a792-d0200e1b16e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:10.065367057Z"}]},"request_id":"3349f02b-3371-491a-a6a5-50289963192f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931110.0691261} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a4c852b3e0fcf1fb97e162a9fb277258","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a4c852b3e0fcf1fb97e162a9fb277258"} gateway-1 | {"time_local":"21/Sep/2024:15:05:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a4c852b3e0fcf1fb97e162a9fb277258"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"a4c852b3e0fcf1fb97e162a9fb277258","responseTime":39,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMH0.D5ycLpTWKYEfvYPPD0EMb4P2zw-oZ3jmC0M6daxybMo","level":"info","message":"auth send jwt","requestID":"c4563f210ac07c111c5d972b11890d87"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c4563f210ac07c111c5d972b11890d87","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c4563f210ac07c111c5d972b11890d87"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":678,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:10Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":678,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.787427,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:10Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c4563f210ac07c111c5d972b11890d87","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931110,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMH0.D5ycLpTWKYEfvYPPD0EMb4P2zw-oZ3jmC0M6daxybMo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c4563f210ac07c111c5d972b11890d87","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f9df44a-ccda-4137-8864-c107014185a3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"141b8b74-dd2f-4534-b96e-010ac7a9f696","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931110.0916786} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c4563f210ac07c111c5d972b11890d87","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a68580dc-c1d5-4edb-9466-2edd4cac136c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931110.095731} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c4563f210ac07c111c5d972b11890d87","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f9df44a-ccda-4137-8864-c107014185a3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"74fc9897-ce49-497d-a5d3-28dd1168050d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931110.111895} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b42ba809-a1fb-45f2-b57d-11d22a822107","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931110.1121645} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"c4563f210ac07c111c5d972b11890d87","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f9df44a-ccda-4137-8864-c107014185a3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f9df44a-ccda-4137-8864-c107014185a3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:10.111868160Z"}]},"request_id":"c8913979-487e-4055-9c40-f786fd98c24f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931110.1156168} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c4563f210ac07c111c5d972b11890d87","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c4563f210ac07c111c5d972b11890d87"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"c4563f210ac07c111c5d972b11890d87","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c4563f210ac07c111c5d972b11890d87"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMH0.D5ycLpTWKYEfvYPPD0EMb4P2zw-oZ3jmC0M6daxybMo","level":"info","message":"auth send jwt","requestID":"2d79509545a0e24ea7a1f3d2312f1efe"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2d79509545a0e24ea7a1f3d2312f1efe","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"2d79509545a0e24ea7a1f3d2312f1efe"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":679,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:10Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":679,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.845683,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"2d79509545a0e24ea7a1f3d2312f1efe","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931110,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMH0.D5ycLpTWKYEfvYPPD0EMb4P2zw-oZ3jmC0M6daxybMo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2d79509545a0e24ea7a1f3d2312f1efe","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f9df44a-ccda-4137-8864-c107014185a3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f9df44a-ccda-4137-8864-c107014185a3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:10.111868160Z"}]},"request_id":"d42558ab-dcad-4ce4-9a83-28920594dfb3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931110.6058803} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2d79509545a0e24ea7a1f3d2312f1efe","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"91d77c28-5a30-4efe-80bc-97511b86fd31","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931110.6128592} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"2d79509545a0e24ea7a1f3d2312f1efe","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f9df44a-ccda-4137-8864-c107014185a3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f9df44a-ccda-4137-8864-c107014185a3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:10.111868160Z"}]},"request_id":"b0816b14-3551-4cc6-831e-012760f8636f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931110.6255853} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2d79509545a0e24ea7a1f3d2312f1efe","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"2d79509545a0e24ea7a1f3d2312f1efe"} device-1 | {"level":"info","message":"PATCH /devices/6f9df44a-ccda-4137-8864-c107014185a3 200 36ms","method":"PATCH","requestID":"2d79509545a0e24ea7a1f3d2312f1efe","responseTime":36,"status":200,"url":"/devices/6f9df44a-ccda-4137-8864-c107014185a3"} gateway-1 | {"time_local":"21/Sep/2024:15:05:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6f9df44a-ccda-4137-8864-c107014185a3 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.042","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"2d79509545a0e24ea7a1f3d2312f1efe"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMH0.D5ycLpTWKYEfvYPPD0EMb4P2zw-oZ3jmC0M6daxybMo","level":"info","message":"auth send jwt","requestID":"dd6acfc9a877ebc6e2790e2da89c10f1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"dd6acfc9a877ebc6e2790e2da89c10f1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"dd6acfc9a877ebc6e2790e2da89c10f1"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":680,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:10Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":680,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.89993,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dd6acfc9a877ebc6e2790e2da89c10f1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931110,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMH0.D5ycLpTWKYEfvYPPD0EMb4P2zw-oZ3jmC0M6daxybMo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"dd6acfc9a877ebc6e2790e2da89c10f1","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"dd6acfc9a877ebc6e2790e2da89c10f1"} device-1 | {"level":"info","message":"POST /devices/6f9df44a-ccda-4137-8864-c107014185a3/websocket 200 20ms","method":"POST","requestID":"dd6acfc9a877ebc6e2790e2da89c10f1","responseTime":20,"status":200,"url":"/devices/6f9df44a-ccda-4137-8864-c107014185a3/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:05:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6f9df44a-ccda-4137-8864-c107014185a3/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"dd6acfc9a877ebc6e2790e2da89c10f1"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5ae6169b96f460772995418db4fc3c73","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5ae6169b96f460772995418db4fc3c73","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/fe370ed4-7b26-4535-a792-d0200e1b16e8/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.006","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5ae6169b96f460772995418db4fc3c73"} device-1 | {"level":"info","message":"OPTIONS /devices/fe370ed4-7b26-4535-a792-d0200e1b16e8/websocket 200 1ms","method":"OPTIONS","requestID":"5ae6169b96f460772995418db4fc3c73","responseTime":1,"status":200,"url":"/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMn0.l823mYKrzNoyjAM5tivBc3hhm0wA10zBgKA8PIaPjnc","level":"info","message":"auth send jwt","requestID":"07daa382365bfebcbf922340246a5111"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"07daa382365bfebcbf922340246a5111","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"07daa382365bfebcbf922340246a5111"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":681,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":681,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.180353,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"07daa382365bfebcbf922340246a5111","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931112,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMn0.l823mYKrzNoyjAM5tivBc3hhm0wA10zBgKA8PIaPjnc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"07daa382365bfebcbf922340246a5111","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"07daa382365bfebcbf922340246a5111"} gateway-1 | {"time_local":"21/Sep/2024:15:05:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/fe370ed4-7b26-4535-a792-d0200e1b16e8/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.036","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"07daa382365bfebcbf922340246a5111"} device-1 | {"level":"info","message":"POST /devices/fe370ed4-7b26-4535-a792-d0200e1b16e8/websocket 200 29ms","method":"POST","requestID":"07daa382365bfebcbf922340246a5111","responseTime":29,"status":200,"url":"/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fbf51b801cdf03ede83c3b350d8f09d9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"fbf51b801cdf03ede83c3b350d8f09d9","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/fe370ed4-7b26-4535-a792-d0200e1b16e8? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"fbf51b801cdf03ede83c3b350d8f09d9"} device-1 | {"level":"info","message":"OPTIONS /devices/fe370ed4-7b26-4535-a792-d0200e1b16e8? 200 1ms","method":"OPTIONS","requestID":"fbf51b801cdf03ede83c3b350d8f09d9","responseTime":1,"status":200,"url":"/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMn0.l823mYKrzNoyjAM5tivBc3hhm0wA10zBgKA8PIaPjnc","level":"info","message":"auth send jwt","requestID":"b2eac9339987c8c7a0aa344ebfe633af"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b2eac9339987c8c7a0aa344ebfe633af","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b2eac9339987c8c7a0aa344ebfe633af"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":682,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":682,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.872375,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b2eac9339987c8c7a0aa344ebfe633af","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931112,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMn0.l823mYKrzNoyjAM5tivBc3hhm0wA10zBgKA8PIaPjnc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b2eac9339987c8c7a0aa344ebfe633af","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffe370ed4-7b26-4535-a792-d0200e1b16e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffe370ed4-7b26-4535-a792-d0200e1b16e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:10.065367057Z"}]},"request_id":"926efdcf-96dc-4de6-8825-00ba75e5e595","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931112.2294438} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b2eac9339987c8c7a0aa344ebfe633af","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f66ac707-a92b-42c2-84f3-62658e20ac4f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931112.2372444} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b2eac9339987c8c7a0aa344ebfe633af","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffe370ed4-7b26-4535-a792-d0200e1b16e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffe370ed4-7b26-4535-a792-d0200e1b16e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:10.065367057Z"}]},"request_id":"9c8a101c-4e58-4960-8600-45d541a45901","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931112.249602} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b2eac9339987c8c7a0aa344ebfe633af","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b2eac9339987c8c7a0aa344ebfe633af"} gateway-1 | {"time_local":"21/Sep/2024:15:05:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/fe370ed4-7b26-4535-a792-d0200e1b16e8? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.045","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b2eac9339987c8c7a0aa344ebfe633af"} device-1 | {"level":"info","message":"PATCH /devices/fe370ed4-7b26-4535-a792-d0200e1b16e8? 200 38ms","method":"PATCH","requestID":"b2eac9339987c8c7a0aa344ebfe633af","responseTime":38,"status":200,"url":"/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMn0.l823mYKrzNoyjAM5tivBc3hhm0wA10zBgKA8PIaPjnc","level":"info","message":"auth send jwt","requestID":"b1a22efc1b32c76536594e7eb116ac8a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b1a22efc1b32c76536594e7eb116ac8a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b1a22efc1b32c76536594e7eb116ac8a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":683,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":683,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.144674,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b1a22efc1b32c76536594e7eb116ac8a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931112,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMn0.l823mYKrzNoyjAM5tivBc3hhm0wA10zBgKA8PIaPjnc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b1a22efc1b32c76536594e7eb116ac8a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffe370ed4-7b26-4535-a792-d0200e1b16e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffe370ed4-7b26-4535-a792-d0200e1b16e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:10.065367057Z"}]},"request_id":"9958ee01-9b4b-472b-a286-6c5ff30a883d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931112.2776768} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b1a22efc1b32c76536594e7eb116ac8a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b1a22efc1b32c76536594e7eb116ac8a"} gateway-1 | {"time_local":"21/Sep/2024:15:05:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/fe370ed4-7b26-4535-a792-d0200e1b16e8? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b1a22efc1b32c76536594e7eb116ac8a"} device-1 | {"level":"info","message":"GET /devices/fe370ed4-7b26-4535-a792-d0200e1b16e8? 200 19ms","method":"GET","requestID":"b1a22efc1b32c76536594e7eb116ac8a","responseTime":19,"status":200,"url":"/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMn0.l823mYKrzNoyjAM5tivBc3hhm0wA10zBgKA8PIaPjnc","level":"info","message":"auth send jwt","requestID":"1167064c63ff37b2009171a96485940c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"1167064c63ff37b2009171a96485940c","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1167064c63ff37b2009171a96485940c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":684,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":684,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.204103,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1167064c63ff37b2009171a96485940c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931112,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMn0.l823mYKrzNoyjAM5tivBc3hhm0wA10zBgKA8PIaPjnc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1167064c63ff37b2009171a96485940c","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f9df44a-ccda-4137-8864-c107014185a3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f9df44a-ccda-4137-8864-c107014185a3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:10.111868160Z"}]},"request_id":"7d6e0893-bfac-4ea2-a112-f6de1faa0423","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931112.3039556} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1167064c63ff37b2009171a96485940c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1167064c63ff37b2009171a96485940c"} gateway-1 | {"time_local":"21/Sep/2024:15:05:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6f9df44a-ccda-4137-8864-c107014185a3? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1167064c63ff37b2009171a96485940c"} device-1 | {"level":"info","message":"GET /devices/6f9df44a-ccda-4137-8864-c107014185a3? 200 18ms","method":"GET","requestID":"1167064c63ff37b2009171a96485940c","responseTime":18,"status":200,"url":"/devices/6f9df44a-ccda-4137-8864-c107014185a3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMn0.l823mYKrzNoyjAM5tivBc3hhm0wA10zBgKA8PIaPjnc","level":"info","message":"auth send jwt","requestID":"dd44f51b4b84cbff74aa7dab8f34a9ef"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"dd44f51b4b84cbff74aa7dab8f34a9ef","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"dd44f51b4b84cbff74aa7dab8f34a9ef"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":685,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":685,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.813087,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dd44f51b4b84cbff74aa7dab8f34a9ef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931112,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMn0.l823mYKrzNoyjAM5tivBc3hhm0wA10zBgKA8PIaPjnc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"dd44f51b4b84cbff74aa7dab8f34a9ef","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b75933b-c4e3-473d-8918-ae0ab20af152"},"level":"info","message":"Attempting to run experiment","requestID":"dd44f51b4b84cbff74aa7dab8f34a9ef"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b75933b-c4e3-473d-8918-ae0ab20af152"},"level":"info","message":"Attempting to book experiment","requestID":"dd44f51b4b84cbff74aa7dab8f34a9ef"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b75933b-c4e3-473d-8918-ae0ab20af152"},"level":"info","message":"Successfully booked experiment","requestID":"dd44f51b4b84cbff74aa7dab8f34a9ef"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e68b67b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e68bb5d0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":686,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":687,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":686,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.573808,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e68b67b0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931112,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMn0.l823mYKrzNoyjAM5tivBc3hhm0wA10zBgKA8PIaPjnc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e68b67b0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":687,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.002,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e68bb5d0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931112,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMn0.l823mYKrzNoyjAM5tivBc3hhm0wA10zBgKA8PIaPjnc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e68bb5d0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffe370ed4-7b26-4535-a792-d0200e1b16e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffe370ed4-7b26-4535-a792-d0200e1b16e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:10.065367057Z"}]},"request_id":"8b2cd184-fcc8-4f81-aedd-e80c6fda2935","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931112.3734446} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e68b67b0-782a-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f9df44a-ccda-4137-8864-c107014185a3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f9df44a-ccda-4137-8864-c107014185a3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:10.111868160Z"}]},"request_id":"2d430561-e7f0-4b1b-bc53-d962fd54fc70","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931112.3771026} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e68bb5d0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e68b67b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/fe370ed4-7b26-4535-a792-d0200e1b16e8? 200 19ms","method":"GET","requestID":"e68b67b0-782a-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e68bb5d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/6f9df44a-ccda-4137-8864-c107014185a3? 200 20ms","method":"GET","requestID":"e68bb5d0-782a-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/6f9df44a-ccda-4137-8864-c107014185a3?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b75933b-c4e3-473d-8918-ae0ab20af152"},"level":"info","message":"Setting up experiment","requestID":"dd44f51b4b84cbff74aa7dab8f34a9ef"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b75933b-c4e3-473d-8918-ae0ab20af152"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"dd44f51b4b84cbff74aa7dab8f34a9ef"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b75933b-c4e3-473d-8918-ae0ab20af152"},"level":"info","message":"Successfully locked booking for experiment","requestID":"dd44f51b4b84cbff74aa7dab8f34a9ef"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b75933b-c4e3-473d-8918-ae0ab20af152"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"dd44f51b4b84cbff74aa7dab8f34a9ef"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b75933b-c4e3-473d-8918-ae0ab20af152"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"dd44f51b4b84cbff74aa7dab8f34a9ef"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b75933b-c4e3-473d-8918-ae0ab20af152"},"level":"info","message":"Attempting to update booking for experiment","requestID":"dd44f51b4b84cbff74aa7dab8f34a9ef"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b75933b-c4e3-473d-8918-ae0ab20af152"},"level":"info","message":"Successfully updated booking for experiment","requestID":"dd44f51b4b84cbff74aa7dab8f34a9ef"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b75933b-c4e3-473d-8918-ae0ab20af152"},"level":"info","message":"Successfully set up experiment","requestID":"dd44f51b4b84cbff74aa7dab8f34a9ef"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e694b680-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e69504a0-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b75933b-c4e3-473d-8918-ae0ab20af152"},"level":"info","message":"Successfully running experiment","requestID":"dd44f51b4b84cbff74aa7dab8f34a9ef"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e69552c0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":688,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":688,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.686236,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":689,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e694b680-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931112,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMn0.l823mYKrzNoyjAM5tivBc3hhm0wA10zBgKA8PIaPjnc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e694b680-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":689,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.702087,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e69504a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931112,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMn0.l823mYKrzNoyjAM5tivBc3hhm0wA10zBgKA8PIaPjnc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e69504a0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":690,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffe370ed4-7b26-4535-a792-d0200e1b16e8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c63db02d-aefe-4889-a0af-029a34e2d780","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931112.4363775} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffe370ed4-7b26-4535-a792-d0200e1b16e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffe370ed4-7b26-4535-a792-d0200e1b16e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:10.065367057Z"}]},"request_id":"c45b27fd-b15e-422b-b157-9a564c054b27","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931112.4366045} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e694b680-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":690,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.211628,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e69552c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"e69552c0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f9df44a-ccda-4137-8864-c107014185a3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f9df44a-ccda-4137-8864-c107014185a3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:10.111868160Z"}]},"request_id":"030bb263-272c-4e0e-9143-642c8e5e4314","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931112.4384286} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e69504a0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e694b680-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/fe370ed4-7b26-4535-a792-d0200e1b16e8? 200 21ms","method":"GET","requestID":"e694b680-782a-11ef-88d4-5fea3f61bb98","responseTime":21,"status":200,"url":"/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e69552c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/fe370ed4-7b26-4535-a792-d0200e1b16e8/signaling 200 18ms","method":"POST","requestID":"e69552c0-782a-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6b75933b-c4e3-473d-8918-ae0ab20af152#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6b75933b-c4e3-473d-8918-ae0ab20af152","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"226dab0a-ba0f-4a03-b7b8-4d7ff16e1948","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931112.4471695} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"94a43939-0cba-4601-a44a-ac2f403b1b89","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931112.4475272} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e6988710-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"dd44f51b4b84cbff74aa7dab8f34a9ef","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e69504a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/6f9df44a-ccda-4137-8864-c107014185a3? 200 27ms","method":"GET","requestID":"e69504a0-782a-11ef-88d4-5fea3f61bb98","responseTime":27,"status":200,"url":"/devices/6f9df44a-ccda-4137-8864-c107014185a3?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":691,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f9df44a-ccda-4137-8864-c107014185a3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2125e45e-7aca-47e9-bbf0-b66676245df4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931112.456098} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":691,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.701136,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:12Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e699e6a0-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/6b75933b-c4e3-473d-8918-ae0ab20af152","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"dd44f51b4b84cbff74aa7dab8f34a9ef"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e6988710-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} experiment-1 | {"level":"info","message":"POST /experiments? 201 140ms","method":"POST","requestID":"dd44f51b4b84cbff74aa7dab8f34a9ef","responseTime":140,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.147","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dd44f51b4b84cbff74aa7dab8f34a9ef"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"e6988710-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":692,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:12Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e6988710-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/6f9df44a-ccda-4137-8864-c107014185a3/signaling 200 14ms","method":"POST","requestID":"e6988710-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/6f9df44a-ccda-4137-8864-c107014185a3/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMn0.l823mYKrzNoyjAM5tivBc3hhm0wA10zBgKA8PIaPjnc","level":"info","message":"auth send jwt","requestID":"7d6c88f90c7ba0f73bfbeaf0611f85ab"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffe370ed4-7b26-4535-a792-d0200e1b16e8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"02eeb758-11ad-4f35-9957-397eed536c70","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931112.463293} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7d6c88f90c7ba0f73bfbeaf0611f85ab","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":692,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.998332,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e699e6a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7d6c88f90c7ba0f73bfbeaf0611f85ab"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e699e6a0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":693,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":693,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.795529,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"7d6c88f90c7ba0f73bfbeaf0611f85ab","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931112,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMn0.l823mYKrzNoyjAM5tivBc3hhm0wA10zBgKA8PIaPjnc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e699e6a0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7d6c88f90c7ba0f73bfbeaf0611f85ab","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/fe370ed4-7b26-4535-a792-d0200e1b16e8/signaling 200 11ms","method":"POST","requestID":"e699e6a0-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e69be270-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffe370ed4-7b26-4535-a792-d0200e1b16e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffe370ed4-7b26-4535-a792-d0200e1b16e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:10.065367057Z"}]},"request_id":"83e0ec1e-22cd-49b6-ae9f-6953b29bf326","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931112.4727192} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7d6c88f90c7ba0f73bfbeaf0611f85ab","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":694,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f9df44a-ccda-4137-8864-c107014185a3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"18607ac8-55ff-4c9e-8522-64cfd51081b8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931112.4755003} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":694,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.481575,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:12Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7d6c88f90c7ba0f73bfbeaf0611f85ab"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e69be270-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} gateway-1 | {"time_local":"21/Sep/2024:15:05:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/fe370ed4-7b26-4535-a792-d0200e1b16e8? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7d6c88f90c7ba0f73bfbeaf0611f85ab"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e69be270-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/fe370ed4-7b26-4535-a792-d0200e1b16e8? 200 13ms","method":"GET","requestID":"7d6c88f90c7ba0f73bfbeaf0611f85ab","responseTime":13,"status":200,"url":"/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e69be270-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/6f9df44a-ccda-4137-8864-c107014185a3/signaling 200 9ms","method":"POST","requestID":"e69be270-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/6f9df44a-ccda-4137-8864-c107014185a3/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b75933b-c4e3-473d-8918-ae0ab20af152"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"dd44f51b4b84cbff74aa7dab8f34a9ef"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMn0.l823mYKrzNoyjAM5tivBc3hhm0wA10zBgKA8PIaPjnc","level":"info","message":"auth send jwt","requestID":"30e7e910d07391cc6f9026d86544886d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"30e7e910d07391cc6f9026d86544886d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"30e7e910d07391cc6f9026d86544886d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e69d9020-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":695,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:12Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e69dde40-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":695,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.85841,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Received request.","req_id":696,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"30e7e910d07391cc6f9026d86544886d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931112,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMn0.l823mYKrzNoyjAM5tivBc3hhm0wA10zBgKA8PIaPjnc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"30e7e910d07391cc6f9026d86544886d","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56756","level":"info","msg":"Sent response.","req_id":696,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.564246,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e69d9020-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931112,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMn0.l823mYKrzNoyjAM5tivBc3hhm0wA10zBgKA8PIaPjnc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e69d9020-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f9df44a-ccda-4137-8864-c107014185a3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f9df44a-ccda-4137-8864-c107014185a3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:10.111868160Z"}]},"request_id":"fc091097-c93e-4150-8c14-eeeb6b09e771","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931112.4901714} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffe370ed4-7b26-4535-a792-d0200e1b16e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffe370ed4-7b26-4535-a792-d0200e1b16e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:10.065367057Z"}]},"request_id":"da2d55c7-2a76-4478-8ea4-55bb12873043","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931112.4910114} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"30e7e910d07391cc6f9026d86544886d","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:54832","level":"info","msg":"Received request.","req_id":697,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e69d9020-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:54832","level":"info","msg":"Sent response.","req_id":697,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.32805,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e69dde40-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931112,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMn0.l823mYKrzNoyjAM5tivBc3hhm0wA10zBgKA8PIaPjnc"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"e69dde40-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"30e7e910d07391cc6f9026d86544886d"} gateway-1 | {"time_local":"21/Sep/2024:15:05:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6f9df44a-ccda-4137-8864-c107014185a3? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"30e7e910d07391cc6f9026d86544886d"} device-1 | {"level":"info","message":"GET /devices/6f9df44a-ccda-4137-8864-c107014185a3? 200 17ms","method":"GET","requestID":"30e7e910d07391cc6f9026d86544886d","responseTime":17,"status":200,"url":"/devices/6f9df44a-ccda-4137-8864-c107014185a3?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e69d9020-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f9df44a-ccda-4137-8864-c107014185a3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f9df44a-ccda-4137-8864-c107014185a3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:10.111868160Z"}]},"request_id":"b8c25033-07c8-431c-a430-31fdc43b4db5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931112.4987884} device-1 | {"level":"info","message":"GET /devices/fe370ed4-7b26-4535-a792-d0200e1b16e8? 200 17ms","method":"GET","requestID":"e69d9020-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e69dde40-782a-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e69dde40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/6f9df44a-ccda-4137-8864-c107014185a3? 200 18ms","method":"GET","requestID":"e69dde40-782a-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/6f9df44a-ccda-4137-8864-c107014185a3?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b75933b-c4e3-473d-8918-ae0ab20af152"},"level":"info","message":"Building connection plan","requestID":"dd44f51b4b84cbff74aa7dab8f34a9ef"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"57ddb2c1-9998-421d-82d0-a51eb75934f4"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"123000c2-f21a-4ce1-8fcf-ad18ad102111"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"760eaf22-2567-4520-be8b-3b0bab5eeb0b"}]},"level":"info","message":"Built pairwise service configurations","requestID":"dd44f51b4b84cbff74aa7dab8f34a9ef"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"dd44f51b4b84cbff74aa7dab8f34a9ef"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"e6a11290-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":698,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":698,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.715674,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e6a11290-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931112,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExMn0.l823mYKrzNoyjAM5tivBc3hhm0wA10zBgKA8PIaPjnc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e6a11290-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"2c9bbef6-eb41-478c-b3fd-2f8008aa45eb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931112.516982} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7665f199-ab4b-40d4-9ad7-d07259fcb590","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931112.5172446} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e6a11290-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"e6a11290-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"e6a11290-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/7d7a8c32-08df-40a4-b48c-eafa1fe3a9de'","requestID":"e6a11290-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/7d7a8c32-08df-40a4-b48c-eafa1fe3a9de'","requestID":"e6a11290-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"e6a11290-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 26ms","method":"POST","requestID":"e6a11290-782a-11ef-88d4-5fea3f61bb98","responseTime":26,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"e6a11290-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b75933b-c4e3-473d-8918-ae0ab20af152"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"dd44f51b4b84cbff74aa7dab8f34a9ef"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e6a928e0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":699,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffe370ed4-7b26-4535-a792-d0200e1b16e8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"92d3ca49-8896-42ce-9194-5cc0c3b83c6e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931112.56287} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":699,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.259759,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e6a928e0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e6a928e0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e6a928e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/fe370ed4-7b26-4535-a792-d0200e1b16e8/signaling 200 8ms","method":"POST","requestID":"e6a928e0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e6aaaf80-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":700,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f9df44a-ccda-4137-8864-c107014185a3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"edd0d99d-8979-4771-bd18-f879bd0fa713","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931112.5728064} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":700,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.283503,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e6aaaf80-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e6aaaf80-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e6aaaf80-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/6f9df44a-ccda-4137-8864-c107014185a3/signaling 200 9ms","method":"POST","requestID":"e6aaaf80-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/6f9df44a-ccda-4137-8864-c107014185a3/signaling"} device-1 | {"device":"fe370ed4-7b26-4535-a792-d0200e1b16e8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"fe370ed4-7b26-4535-a792-d0200e1b16e8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"6f9df44a-ccda-4137-8864-c107014185a3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"7d7a8c32-08df-40a4-b48c-eafa1fe3a9de","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 7511372465988913141 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=msid-semantic: WMS\r\nm=application 9 DTLS/SCTP 5000\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:qTBi\r\na=ice-pwd:4ToCKfW3cntJ6DS0gYtFIP59\r\na=ice-options:trickle\r\na=fingerprint:sha-256 B3:0A:32:26:61:7F:C3:28:AC:39:FC:95:53:A3:E2:94:98:91:6F:99:FA:65:D1:86:B8:70:05:D4:0E:68:DB:7E\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"fe370ed4-7b26-4535-a792-d0200e1b16e8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3048728605 1 udp 2113937151 07306c92-a9b4-45a2-9741-5deb3e364337.local 58058 typ host generation 0 ufrag qTBi network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"fe370ed4-7b26-4535-a792-d0200e1b16e8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"fe370ed4-7b26-4535-a792-d0200e1b16e8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:2548655760 1 udp 1677729535 141.24.211.56 58058 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag qTBi network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"fe370ed4-7b26-4535-a792-d0200e1b16e8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"6f9df44a-ccda-4137-8864-c107014185a3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6f9df44a-ccda-4137-8864-c107014185a3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6f9df44a-ccda-4137-8864-c107014185a3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/7d7a8c32-08df-40a4-b48c-eafa1fe3a9de' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7d7a8c32-08df-40a4-b48c-eafa1fe3a9de","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8'"} device-1 | {"device":"fe370ed4-7b26-4535-a792-d0200e1b16e8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7c7f9266070829a442bfb33f1a6332a8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7c7f9266070829a442bfb33f1a6332a8","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/7d7a8c32-08df-40a4-b48c-eafa1fe3a9de"}}},"level":"info","message":"received a callback","requestID":"7c7f9266070829a442bfb33f1a6332a8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"7c7f9266070829a442bfb33f1a6332a8","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"7c7f9266070829a442bfb33f1a6332a8"} device-1 | {"data":{"peerconnection":"7d7a8c32-08df-40a4-b48c-eafa1fe3a9de","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"6f9df44a-ccda-4137-8864-c107014185a3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"fe370ed4-7b26-4535-a792-d0200e1b16e8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"6f9df44a-ccda-4137-8864-c107014185a3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"7d7a8c32-08df-40a4-b48c-eafa1fe3a9de","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"fe370ed4-7b26-4535-a792-d0200e1b16e8","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/7d7a8c32-08df-40a4-b48c-eafa1fe3a9de' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7d7a8c32-08df-40a4-b48c-eafa1fe3a9de","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"97e7df278f96a5b934f6e9dd304f823e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"97e7df278f96a5b934f6e9dd304f823e","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/7d7a8c32-08df-40a4-b48c-eafa1fe3a9de"}}},"level":"info","message":"received a callback","requestID":"97e7df278f96a5b934f6e9dd304f823e"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"e7f027d0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":701,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:14Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7d7a8c32-08df-40a4-b48c-eafa1fe3a9de","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6e17fc83-ffa5-4370-a9ec-59b21c5a42f4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931114.7083032} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":701,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.809218,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/7d7a8c32-08df-40a4-b48c-eafa1fe3a9de","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e7f027d0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/7d7a8c32-08df-40a4-b48c-eafa1fe3a9de","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"e7f027d0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"e7f027d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/7d7a8c32-08df-40a4-b48c-eafa1fe3a9de 200 13ms","method":"GET","requestID":"e7f027d0-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/peerconnections/7d7a8c32-08df-40a4-b48c-eafa1fe3a9de"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 47ms","method":"POST","requestID":"97e7df278f96a5b934f6e9dd304f823e","responseTime":47,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch","requestID":"97e7df278f96a5b934f6e9dd304f823e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e7f61b40-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":702,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:14Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffe370ed4-7b26-4535-a792-d0200e1b16e8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8808a5b1-c339-4945-a209-1b85963fa2c9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931114.7475493} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":702,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.145403,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e7f61b40-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"e7f61b40-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e7f61b40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/fe370ed4-7b26-4535-a792-d0200e1b16e8/signaling 200 15ms","method":"POST","requestID":"e7f61b40-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e7f90170-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":703,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:14Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f9df44a-ccda-4137-8864-c107014185a3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bb61368f-a41a-4b4d-b70d-78f9873e7c1d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931114.7666016} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":703,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.955473,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e7f90170-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"e7f90170-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e7f90170-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/6f9df44a-ccda-4137-8864-c107014185a3/signaling 200 15ms","method":"POST","requestID":"e7f90170-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/6f9df44a-ccda-4137-8864-c107014185a3/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExNH0.jGm7Cou1JRUw1iurYyOY_6KSfZKUWZjGKZG2LpedOnE","level":"info","message":"auth send jwt","requestID":"68fb2afe0f8d9f4ba6f81ad977383ff8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"68fb2afe0f8d9f4ba6f81ad977383ff8","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/6b75933b-c4e3-473d-8918-ae0ab20af152","requestID":"68fb2afe0f8d9f4ba6f81ad977383ff8"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":704,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:14Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":704,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.303733,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/6b75933b-c4e3-473d-8918-ae0ab20af152","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"68fb2afe0f8d9f4ba6f81ad977383ff8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/6b75933b-c4e3-473d-8918-ae0ab20af152","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931114,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExNH0.jGm7Cou1JRUw1iurYyOY_6KSfZKUWZjGKZG2LpedOnE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"68fb2afe0f8d9f4ba6f81ad977383ff8","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/6b75933b-c4e3-473d-8918-ae0ab20af152","requestID":"68fb2afe0f8d9f4ba6f81ad977383ff8"} experiment-1 | {"level":"info","message":"GET /experiments/6b75933b-c4e3-473d-8918-ae0ab20af152 200 15ms","method":"GET","requestID":"68fb2afe0f8d9f4ba6f81ad977383ff8","responseTime":15,"status":200,"url":"/experiments/6b75933b-c4e3-473d-8918-ae0ab20af152"} gateway-1 | {"time_local":"21/Sep/2024:15:05:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/6b75933b-c4e3-473d-8918-ae0ab20af152 HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"68fb2afe0f8d9f4ba6f81ad977383ff8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExNH0.jGm7Cou1JRUw1iurYyOY_6KSfZKUWZjGKZG2LpedOnE","level":"info","message":"auth send jwt","requestID":"aa8c6d1332b75fec99a97dfe6295a8fb"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"aa8c6d1332b75fec99a97dfe6295a8fb","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/6b75933b-c4e3-473d-8918-ae0ab20af152","requestID":"aa8c6d1332b75fec99a97dfe6295a8fb"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":705,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:14Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":705,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.228886,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:14Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/6b75933b-c4e3-473d-8918-ae0ab20af152","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"aa8c6d1332b75fec99a97dfe6295a8fb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/6b75933b-c4e3-473d-8918-ae0ab20af152","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931114,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExNH0.jGm7Cou1JRUw1iurYyOY_6KSfZKUWZjGKZG2LpedOnE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"aa8c6d1332b75fec99a97dfe6295a8fb","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b75933b-c4e3-473d-8918-ae0ab20af152"},"level":"info","message":"Attempting to finish experiment","requestID":"aa8c6d1332b75fec99a97dfe6295a8fb"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"e804c140-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":706,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:14Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":706,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.131334,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:14Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/7d7a8c32-08df-40a4-b48c-eafa1fe3a9de","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e804c140-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/7d7a8c32-08df-40a4-b48c-eafa1fe3a9de","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931114,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExNH0.jGm7Cou1JRUw1iurYyOY_6KSfZKUWZjGKZG2LpedOnE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e804c140-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/7d7a8c32-08df-40a4-b48c-eafa1fe3a9de","device":"fe370ed4-7b26-4535-a792-d0200e1b16e8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"6f9df44a-ccda-4137-8864-c107014185a3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6f9df44a-ccda-4137-8864-c107014185a3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6f9df44a-ccda-4137-8864-c107014185a3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/7d7a8c32-08df-40a4-b48c-eafa1fe3a9de' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/7d7a8c32-08df-40a4-b48c-eafa1fe3a9de' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7d7a8c32-08df-40a4-b48c-eafa1fe3a9de","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7d7a8c32-08df-40a4-b48c-eafa1fe3a9de': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7d7a8c32-08df-40a4-b48c-eafa1fe3a9de","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"2ebbf020-013d-444f-8a01-6098c9dec4d9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931114.8655672} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cb07350c-d188-49cf-8400-616ec9951ae9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931114.8663692} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3a53db4c88dfd80c5cbaf44edcf16cf1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"e804c140-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3a53db4c88dfd80c5cbaf44edcf16cf1","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b815cf0a19c5f8a61a58cd281e07f30f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/7d7a8c32-08df-40a4-b48c-eafa1fe3a9de"}}},"level":"info","message":"received a callback","requestID":"3a53db4c88dfd80c5cbaf44edcf16cf1"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b815cf0a19c5f8a61a58cd281e07f30f","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/7d7a8c32-08df-40a4-b48c-eafa1fe3a9de"}}},"level":"info","message":"received a callback","requestID":"b815cf0a19c5f8a61a58cd281e07f30f"} device-1 | {"data":{"peerconnection":"7d7a8c32-08df-40a4-b48c-eafa1fe3a9de","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"e804c140-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/7d7a8c32-08df-40a4-b48c-eafa1fe3a9de 204 57ms","method":"DELETE","requestID":"e804c140-782a-11ef-88d4-5fea3f61bb98","responseTime":57,"status":204,"url":"/peerconnections/7d7a8c32-08df-40a4-b48c-eafa1fe3a9de"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b75933b-c4e3-473d-8918-ae0ab20af152"},"level":"info","message":"Successfully finished experiment","requestID":"aa8c6d1332b75fec99a97dfe6295a8fb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e81207b0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":707,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:14Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffe370ed4-7b26-4535-a792-d0200e1b16e8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"57b04481-ca33-40c2-9d95-3d2452bacccd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931114.9302998} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":707,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.180803,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e81207b0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"e81207b0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6b75933b-c4e3-473d-8918-ae0ab20af152': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6b75933b-c4e3-473d-8918-ae0ab20af152","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"685c4eee-e71e-4a2d-901d-5373b4ad6267","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931114.9365747} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e81207b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/fe370ed4-7b26-4535-a792-d0200e1b16e8/signaling 200 14ms","method":"POST","requestID":"e81207b0-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"276f678c-42ea-442c-a13a-ae178a3010cc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931114.9369833} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"aa8c6d1332b75fec99a97dfe6295a8fb","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e814c6d0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":708,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:14Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f9df44a-ccda-4137-8864-c107014185a3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d87ce10a-4164-43ac-93a2-d02a2a114769","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931114.9516194} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":708,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.738999,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e814c6d0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"e814c6d0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e814c6d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/6f9df44a-ccda-4137-8864-c107014185a3/signaling 200 18ms","method":"POST","requestID":"e814c6d0-782a-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/6f9df44a-ccda-4137-8864-c107014185a3/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/6b75933b-c4e3-473d-8918-ae0ab20af152","requestID":"aa8c6d1332b75fec99a97dfe6295a8fb"} gateway-1 | {"time_local":"21/Sep/2024:15:05:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/6b75933b-c4e3-473d-8918-ae0ab20af152 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.196","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"aa8c6d1332b75fec99a97dfe6295a8fb"} experiment-1 | {"level":"info","message":"DELETE /experiments/6b75933b-c4e3-473d-8918-ae0ab20af152 204 190ms","method":"DELETE","requestID":"aa8c6d1332b75fec99a97dfe6295a8fb","responseTime":190,"status":204,"url":"/experiments/6b75933b-c4e3-473d-8918-ae0ab20af152"} gateway-1 | {"time_local":"21/Sep/2024:15:05:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3269","request_time":"4.353","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"a2977907617f2ac08edd00120f0096ef"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 142ms","method":"POST","requestID":"3a53db4c88dfd80c5cbaf44edcf16cf1","responseTime":142,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.147","http_referrer":"","http_user_agent":"node-fetch","requestID":"3a53db4c88dfd80c5cbaf44edcf16cf1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 143ms","method":"POST","requestID":"b815cf0a19c5f8a61a58cd281e07f30f","responseTime":143,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExNX0.FMJrno6QvDms-mNyznRbLyusAlPJUMOIdmrvEBNDLDM","level":"info","message":"auth send jwt","requestID":"7a7b803e715ba41cadefdb1e3e6d1fca"} gateway-1 | {"time_local":"21/Sep/2024:15:05:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.150","http_referrer":"","http_user_agent":"node-fetch","requestID":"b815cf0a19c5f8a61a58cd281e07f30f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7a7b803e715ba41cadefdb1e3e6d1fca","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7a7b803e715ba41cadefdb1e3e6d1fca"} gateway-1 | {"time_local":"21/Sep/2024:15:05:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3132","request_time":"2.856","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ab193afadb46922bddc48322b8232fbf"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":709,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:15Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":709,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.07587,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"7a7b803e715ba41cadefdb1e3e6d1fca","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931115,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExNX0.FMJrno6QvDms-mNyznRbLyusAlPJUMOIdmrvEBNDLDM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7a7b803e715ba41cadefdb1e3e6d1fca","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/6f9df44a-ccda-4137-8864-c107014185a3' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd128d35e-1526-4c98-93ce-fc0cb3438d7c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"48f0d563-aaa9-4487-b9cd-08f5f0f39c19","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931115.0457413} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7a7b803e715ba41cadefdb1e3e6d1fca","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/fe370ed4-7b26-4535-a792-d0200e1b16e8' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b2f0dc42-709b-4380-91b0-a386c3ac6171","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931115.0516057} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"7a7b803e715ba41cadefdb1e3e6d1fca","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd128d35e-1526-4c98-93ce-fc0cb3438d7c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"a2105bd1-bf47-4bca-a4c5-4d8403e59655","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931115.0673509} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"753c9fc6-a32d-43f9-9acd-1192a0c3413c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931115.0675309} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"7a7b803e715ba41cadefdb1e3e6d1fca","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd128d35e-1526-4c98-93ce-fc0cb3438d7c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd128d35e-1526-4c98-93ce-fc0cb3438d7c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:15.067325465Z"}]},"request_id":"c83ee3c1-d0eb-4d0b-a39a-3fbd42c494b1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931115.0721357} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7a7b803e715ba41cadefdb1e3e6d1fca","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7a7b803e715ba41cadefdb1e3e6d1fca"} gateway-1 | {"time_local":"21/Sep/2024:15:05:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.063","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7a7b803e715ba41cadefdb1e3e6d1fca"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"7a7b803e715ba41cadefdb1e3e6d1fca","responseTime":52,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExNX0.FMJrno6QvDms-mNyznRbLyusAlPJUMOIdmrvEBNDLDM","level":"info","message":"auth send jwt","requestID":"3bd6adca58024cc2b079c5212664b5bf"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3bd6adca58024cc2b079c5212664b5bf","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3bd6adca58024cc2b079c5212664b5bf"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":710,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:15Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":710,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.684363,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"3bd6adca58024cc2b079c5212664b5bf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931115,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExNX0.FMJrno6QvDms-mNyznRbLyusAlPJUMOIdmrvEBNDLDM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3bd6adca58024cc2b079c5212664b5bf","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603a3ac9-31bf-4055-b842-d272849fe1f4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9fe0bbb0-4843-4ac1-a41b-df013814ca01","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931115.0958803} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3bd6adca58024cc2b079c5212664b5bf","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"30f08772-094f-493e-8aa2-0b7b7bf74134","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931115.1003368} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"3bd6adca58024cc2b079c5212664b5bf","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603a3ac9-31bf-4055-b842-d272849fe1f4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"e64c57ce-6f62-4558-999d-18b1cc42f47e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931115.110549} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"38f633d4-2fd4-4445-8244-953d62002587","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931115.1106853} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"3bd6adca58024cc2b079c5212664b5bf","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603a3ac9-31bf-4055-b842-d272849fe1f4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603a3ac9-31bf-4055-b842-d272849fe1f4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:15.110527854Z"}]},"request_id":"c9967e49-95af-4b87-9ef8-f9551400773b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931115.114875} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3bd6adca58024cc2b079c5212664b5bf","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3bd6adca58024cc2b079c5212664b5bf"} gateway-1 | {"time_local":"21/Sep/2024:15:05:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.041","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3bd6adca58024cc2b079c5212664b5bf"} device-1 | {"level":"info","message":"POST /devices? 201 36ms","method":"POST","requestID":"3bd6adca58024cc2b079c5212664b5bf","responseTime":36,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExNX0.FMJrno6QvDms-mNyznRbLyusAlPJUMOIdmrvEBNDLDM","level":"info","message":"auth send jwt","requestID":"3d5146a6cb6767beaee2bd9980610bba"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3d5146a6cb6767beaee2bd9980610bba","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"3d5146a6cb6767beaee2bd9980610bba"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":711,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:15Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":711,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.904571,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"3d5146a6cb6767beaee2bd9980610bba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931115,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExNX0.FMJrno6QvDms-mNyznRbLyusAlPJUMOIdmrvEBNDLDM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3d5146a6cb6767beaee2bd9980610bba","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603a3ac9-31bf-4055-b842-d272849fe1f4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603a3ac9-31bf-4055-b842-d272849fe1f4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:15.110527854Z"}]},"request_id":"2e0ec067-c7ba-4b80-b57b-5072a370b115","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931115.6059043} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3d5146a6cb6767beaee2bd9980610bba","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"90d447ca-0d0b-401f-9db0-5a79e37d3c7b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931115.6117399} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"3d5146a6cb6767beaee2bd9980610bba","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603a3ac9-31bf-4055-b842-d272849fe1f4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603a3ac9-31bf-4055-b842-d272849fe1f4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:15.110527854Z"}]},"request_id":"9472bf9a-08b6-4c31-8a1f-554da4a6294b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931115.624251} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3d5146a6cb6767beaee2bd9980610bba","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"3d5146a6cb6767beaee2bd9980610bba"} gateway-1 | {"time_local":"21/Sep/2024:15:05:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/603a3ac9-31bf-4055-b842-d272849fe1f4 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"3d5146a6cb6767beaee2bd9980610bba"} device-1 | {"level":"info","message":"PATCH /devices/603a3ac9-31bf-4055-b842-d272849fe1f4 200 34ms","method":"PATCH","requestID":"3d5146a6cb6767beaee2bd9980610bba","responseTime":34,"status":200,"url":"/devices/603a3ac9-31bf-4055-b842-d272849fe1f4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExNX0.FMJrno6QvDms-mNyznRbLyusAlPJUMOIdmrvEBNDLDM","level":"info","message":"auth send jwt","requestID":"7b1cf9ec2d1de30c4c1f81773bebf9ee"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7b1cf9ec2d1de30c4c1f81773bebf9ee","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"7b1cf9ec2d1de30c4c1f81773bebf9ee"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":712,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:15Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":712,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.234136,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"7b1cf9ec2d1de30c4c1f81773bebf9ee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931115,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExNX0.FMJrno6QvDms-mNyznRbLyusAlPJUMOIdmrvEBNDLDM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7b1cf9ec2d1de30c4c1f81773bebf9ee","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"7b1cf9ec2d1de30c4c1f81773bebf9ee"} device-1 | {"level":"info","message":"POST /devices/603a3ac9-31bf-4055-b842-d272849fe1f4/websocket 200 19ms","method":"POST","requestID":"7b1cf9ec2d1de30c4c1f81773bebf9ee","responseTime":19,"status":200,"url":"/devices/603a3ac9-31bf-4055-b842-d272849fe1f4/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:05:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/603a3ac9-31bf-4055-b842-d272849fe1f4/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"7b1cf9ec2d1de30c4c1f81773bebf9ee"} device-1 | {"level":"info","message":"device 'http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6324ebdd5369e2a26eb9da1289651cd6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6324ebdd5369e2a26eb9da1289651cd6","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6324ebdd5369e2a26eb9da1289651cd6"} device-1 | {"level":"info","message":"OPTIONS /devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c/websocket 200 1ms","method":"OPTIONS","requestID":"6324ebdd5369e2a26eb9da1289651cd6","responseTime":1,"status":200,"url":"/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExN30.RdsicupPkZNSNbW0uWjIH96ARKHxOPD5CRt4kTjfzq4","level":"info","message":"auth send jwt","requestID":"1506d214b4ec67f6e9d0ecc0e1d0f01e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1506d214b4ec67f6e9d0ecc0e1d0f01e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"1506d214b4ec67f6e9d0ecc0e1d0f01e"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":713,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":713,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.223023,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1506d214b4ec67f6e9d0ecc0e1d0f01e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931117,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExN30.RdsicupPkZNSNbW0uWjIH96ARKHxOPD5CRt4kTjfzq4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1506d214b4ec67f6e9d0ecc0e1d0f01e","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"1506d214b4ec67f6e9d0ecc0e1d0f01e"} device-1 | {"level":"info","message":"POST /devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c/websocket 200 29ms","method":"POST","requestID":"1506d214b4ec67f6e9d0ecc0e1d0f01e","responseTime":29,"status":200,"url":"/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:05:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.035","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1506d214b4ec67f6e9d0ecc0e1d0f01e"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8f7526f40c6fcb23010e9dc937c904b4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8f7526f40c6fcb23010e9dc937c904b4","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"8f7526f40c6fcb23010e9dc937c904b4"} device-1 | {"level":"info","message":"OPTIONS /devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c? 200 1ms","method":"OPTIONS","requestID":"8f7526f40c6fcb23010e9dc937c904b4","responseTime":1,"status":200,"url":"/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExN30.RdsicupPkZNSNbW0uWjIH96ARKHxOPD5CRt4kTjfzq4","level":"info","message":"auth send jwt","requestID":"739c367ba8328c7888bec8fa6be46983"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"739c367ba8328c7888bec8fa6be46983","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"739c367ba8328c7888bec8fa6be46983"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":714,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":714,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.13919,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"739c367ba8328c7888bec8fa6be46983","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931117,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExN30.RdsicupPkZNSNbW0uWjIH96ARKHxOPD5CRt4kTjfzq4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"739c367ba8328c7888bec8fa6be46983","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd128d35e-1526-4c98-93ce-fc0cb3438d7c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd128d35e-1526-4c98-93ce-fc0cb3438d7c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:15.067325465Z"}]},"request_id":"c54ffa12-300d-4a43-adff-89709c7d28fc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931117.2546704} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"739c367ba8328c7888bec8fa6be46983","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3926d5ba-ad74-40c6-8fff-9e459bb261f0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931117.2633708} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"739c367ba8328c7888bec8fa6be46983","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd128d35e-1526-4c98-93ce-fc0cb3438d7c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd128d35e-1526-4c98-93ce-fc0cb3438d7c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:15.067325465Z"}]},"request_id":"e2d1d92a-6021-4b61-b468-69eb4bcc9503","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931117.2748225} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"739c367ba8328c7888bec8fa6be46983","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"739c367ba8328c7888bec8fa6be46983"} device-1 | {"level":"info","message":"PATCH /devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c? 200 38ms","method":"PATCH","requestID":"739c367ba8328c7888bec8fa6be46983","responseTime":38,"status":200,"url":"/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.045","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"739c367ba8328c7888bec8fa6be46983"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExN30.RdsicupPkZNSNbW0uWjIH96ARKHxOPD5CRt4kTjfzq4","level":"info","message":"auth send jwt","requestID":"337755f0c3a96a6fb7ac2a0721d0d5f8"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"337755f0c3a96a6fb7ac2a0721d0d5f8","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"337755f0c3a96a6fb7ac2a0721d0d5f8"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":715,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":715,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.378628,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"337755f0c3a96a6fb7ac2a0721d0d5f8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931117,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExN30.RdsicupPkZNSNbW0uWjIH96ARKHxOPD5CRt4kTjfzq4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"337755f0c3a96a6fb7ac2a0721d0d5f8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd128d35e-1526-4c98-93ce-fc0cb3438d7c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd128d35e-1526-4c98-93ce-fc0cb3438d7c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:15.067325465Z"}]},"request_id":"bd577ffe-6737-4630-9912-06b5a3211138","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931117.3072813} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"337755f0c3a96a6fb7ac2a0721d0d5f8","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"337755f0c3a96a6fb7ac2a0721d0d5f8"} gateway-1 | {"time_local":"21/Sep/2024:15:05:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"337755f0c3a96a6fb7ac2a0721d0d5f8"} device-1 | {"level":"info","message":"GET /devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c? 200 20ms","method":"GET","requestID":"337755f0c3a96a6fb7ac2a0721d0d5f8","responseTime":20,"status":200,"url":"/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExN30.RdsicupPkZNSNbW0uWjIH96ARKHxOPD5CRt4kTjfzq4","level":"info","message":"auth send jwt","requestID":"f11092e5bcb6ff30a47280041a3b4960"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"f11092e5bcb6ff30a47280041a3b4960","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f11092e5bcb6ff30a47280041a3b4960"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":716,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":716,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.17909,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f11092e5bcb6ff30a47280041a3b4960","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931117,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExN30.RdsicupPkZNSNbW0uWjIH96ARKHxOPD5CRt4kTjfzq4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f11092e5bcb6ff30a47280041a3b4960","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603a3ac9-31bf-4055-b842-d272849fe1f4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603a3ac9-31bf-4055-b842-d272849fe1f4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:15.110527854Z"}]},"request_id":"740509f7-ee9a-4663-b1c9-5728877cadb1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931117.3361826} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f11092e5bcb6ff30a47280041a3b4960","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f11092e5bcb6ff30a47280041a3b4960"} gateway-1 | {"time_local":"21/Sep/2024:15:05:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/603a3ac9-31bf-4055-b842-d272849fe1f4? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f11092e5bcb6ff30a47280041a3b4960"} device-1 | {"level":"info","message":"GET /devices/603a3ac9-31bf-4055-b842-d272849fe1f4? 200 18ms","method":"GET","requestID":"f11092e5bcb6ff30a47280041a3b4960","responseTime":18,"status":200,"url":"/devices/603a3ac9-31bf-4055-b842-d272849fe1f4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExN30.RdsicupPkZNSNbW0uWjIH96ARKHxOPD5CRt4kTjfzq4","level":"info","message":"auth send jwt","requestID":"52d79a7345e0fa4bca4e89eb4ce88fbc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"52d79a7345e0fa4bca4e89eb4ce88fbc","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"52d79a7345e0fa4bca4e89eb4ce88fbc"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":717,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":717,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.232178,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"52d79a7345e0fa4bca4e89eb4ce88fbc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931117,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExN30.RdsicupPkZNSNbW0uWjIH96ARKHxOPD5CRt4kTjfzq4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"52d79a7345e0fa4bca4e89eb4ce88fbc","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f43965d7-312c-4e81-ae86-63372bf5753a"},"level":"info","message":"Attempting to run experiment","requestID":"52d79a7345e0fa4bca4e89eb4ce88fbc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f43965d7-312c-4e81-ae86-63372bf5753a"},"level":"info","message":"Attempting to book experiment","requestID":"52d79a7345e0fa4bca4e89eb4ce88fbc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f43965d7-312c-4e81-ae86-63372bf5753a"},"level":"info","message":"Successfully booked experiment","requestID":"52d79a7345e0fa4bca4e89eb4ce88fbc"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e98a76e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e98a9df0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":718,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":718,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.66514,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e98a76e0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931117,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExN30.RdsicupPkZNSNbW0uWjIH96ARKHxOPD5CRt4kTjfzq4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e98a76e0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:54840","level":"info","msg":"Received request.","req_id":719,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"client_addr":"127.0.0.1:54840","level":"info","msg":"Sent response.","req_id":719,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.050313,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e98a9df0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931117,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExN30.RdsicupPkZNSNbW0uWjIH96ARKHxOPD5CRt4kTjfzq4"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"e98a9df0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd128d35e-1526-4c98-93ce-fc0cb3438d7c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd128d35e-1526-4c98-93ce-fc0cb3438d7c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:15.067325465Z"}]},"request_id":"83f7fe92-6be1-489e-a5ca-d15df9f5a318","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931117.4015772} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e98a76e0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603a3ac9-31bf-4055-b842-d272849fe1f4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603a3ac9-31bf-4055-b842-d272849fe1f4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:15.110527854Z"}]},"request_id":"d8af4a5d-fedd-44fd-bacc-4c986ab99d43","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931117.4058895} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e98a76e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c? 200 17ms","method":"GET","requestID":"e98a76e0-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e98a9df0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e98a9df0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/603a3ac9-31bf-4055-b842-d272849fe1f4? 200 20ms","method":"GET","requestID":"e98a9df0-782a-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/603a3ac9-31bf-4055-b842-d272849fe1f4?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f43965d7-312c-4e81-ae86-63372bf5753a"},"level":"info","message":"Setting up experiment","requestID":"52d79a7345e0fa4bca4e89eb4ce88fbc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f43965d7-312c-4e81-ae86-63372bf5753a"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"52d79a7345e0fa4bca4e89eb4ce88fbc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f43965d7-312c-4e81-ae86-63372bf5753a"},"level":"info","message":"Successfully locked booking for experiment","requestID":"52d79a7345e0fa4bca4e89eb4ce88fbc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f43965d7-312c-4e81-ae86-63372bf5753a"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"52d79a7345e0fa4bca4e89eb4ce88fbc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f43965d7-312c-4e81-ae86-63372bf5753a"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"52d79a7345e0fa4bca4e89eb4ce88fbc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f43965d7-312c-4e81-ae86-63372bf5753a"},"level":"info","message":"Attempting to update booking for experiment","requestID":"52d79a7345e0fa4bca4e89eb4ce88fbc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f43965d7-312c-4e81-ae86-63372bf5753a"},"level":"info","message":"Successfully updated booking for experiment","requestID":"52d79a7345e0fa4bca4e89eb4ce88fbc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f43965d7-312c-4e81-ae86-63372bf5753a"},"level":"info","message":"Successfully set up experiment","requestID":"52d79a7345e0fa4bca4e89eb4ce88fbc"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e994fe30-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e9954c50-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":720,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:17Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f43965d7-312c-4e81-ae86-63372bf5753a"},"level":"info","message":"Successfully running experiment","requestID":"52d79a7345e0fa4bca4e89eb4ce88fbc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e995c180-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":720,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.235795,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"client_addr":"127.0.0.1:54840","level":"info","msg":"Received request.","req_id":721,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e994fe30-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931117,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExN30.RdsicupPkZNSNbW0uWjIH96ARKHxOPD5CRt4kTjfzq4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e994fe30-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:54840","level":"info","msg":"Sent response.","req_id":721,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.064622,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e9954c50-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931117,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExN30.RdsicupPkZNSNbW0uWjIH96ARKHxOPD5CRt4kTjfzq4"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"e9954c50-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":722,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd128d35e-1526-4c98-93ce-fc0cb3438d7c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"92697a59-5538-49a0-9b9f-6f2a56818204","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931117.4723246} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":722,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.033828,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e995c180-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"e995c180-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd128d35e-1526-4c98-93ce-fc0cb3438d7c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd128d35e-1526-4c98-93ce-fc0cb3438d7c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:15.067325465Z"}]},"request_id":"adaea432-918e-4202-bed7-e1ca19d07d07","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931117.4733577} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603a3ac9-31bf-4055-b842-d272849fe1f4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603a3ac9-31bf-4055-b842-d272849fe1f4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:15.110527854Z"}]},"request_id":"16188261-80d8-4c56-9b97-2509e4dc4540","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931117.4746668} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e994fe30-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e9954c50-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e995c180-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c/signaling 200 16ms","method":"POST","requestID":"e995c180-782a-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e994fe30-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c? 200 22ms","method":"GET","requestID":"e994fe30-782a-11ef-88d4-5fea3f61bb98","responseTime":22,"status":200,"url":"/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e9954c50-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/603a3ac9-31bf-4055-b842-d272849fe1f4? 200 21ms","method":"GET","requestID":"e9954c50-782a-11ef-88d4-5fea3f61bb98","responseTime":21,"status":200,"url":"/devices/603a3ac9-31bf-4055-b842-d272849fe1f4?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e998a7b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e998cec0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff43965d7-312c-4e81-ae86-63372bf5753a#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff43965d7-312c-4e81-ae86-63372bf5753a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"f2424ef8-ec18-4ebf-9c1d-d3a4c6d6b1f5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931117.485952} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"184a39b9-34ac-49b8-813d-b6dfccd9ed4a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931117.486276} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603a3ac9-31bf-4055-b842-d272849fe1f4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f608f65b-8ab2-480f-a42b-4d5fc18907f7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931117.488481} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":723,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"client_addr":"127.0.0.1:54840","level":"info","msg":"Received request.","req_id":724,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"52d79a7345e0fa4bca4e89eb4ce88fbc","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":723,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.258061,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e998a7b0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e998a7b0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:54840","level":"info","msg":"Sent response.","req_id":724,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.164376,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd128d35e-1526-4c98-93ce-fc0cb3438d7c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"14297403-e5f8-4ed4-b4c3-f1435023b22b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931117.4899242} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e998cec0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e998cec0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e998a7b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/603a3ac9-31bf-4055-b842-d272849fe1f4/signaling 200 12ms","method":"POST","requestID":"e998a7b0-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/603a3ac9-31bf-4055-b842-d272849fe1f4/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/f43965d7-312c-4e81-ae86-63372bf5753a","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"52d79a7345e0fa4bca4e89eb4ce88fbc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e998cec0-782a-11ef-88d4-5fea3f61bb98"} gateway-1 | {"time_local":"21/Sep/2024:15:05:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.152","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"52d79a7345e0fa4bca4e89eb4ce88fbc"} experiment-1 | {"level":"info","message":"POST /experiments? 201 146ms","method":"POST","requestID":"52d79a7345e0fa4bca4e89eb4ce88fbc","responseTime":146,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"POST /devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c/signaling 200 12ms","method":"POST","requestID":"e998cec0-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e99b18b0-782a-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExN30.RdsicupPkZNSNbW0uWjIH96ARKHxOPD5CRt4kTjfzq4","level":"info","message":"auth send jwt","requestID":"c8a6f26edbd575cf95eca4bd060a5f99"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c8a6f26edbd575cf95eca4bd060a5f99","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c8a6f26edbd575cf95eca4bd060a5f99"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":725,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"client_addr":"127.0.0.1:54840","level":"info","msg":"Received request.","req_id":726,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"client_addr":"127.0.0.1:54840","level":"info","msg":"Sent response.","req_id":726,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.690379,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c8a6f26edbd575cf95eca4bd060a5f99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931117,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExN30.RdsicupPkZNSNbW0uWjIH96ARKHxOPD5CRt4kTjfzq4"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"c8a6f26edbd575cf95eca4bd060a5f99","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603a3ac9-31bf-4055-b842-d272849fe1f4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a54f08e9-26bb-4caf-a3db-61c802c17978","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931117.5040162} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":725,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.3703,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e99b18b0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e99b18b0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd128d35e-1526-4c98-93ce-fc0cb3438d7c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd128d35e-1526-4c98-93ce-fc0cb3438d7c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:15.067325465Z"}]},"request_id":"2a616848-1360-4193-ad75-dd25402a5d05","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931117.5077217} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c8a6f26edbd575cf95eca4bd060a5f99","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e99b18b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/603a3ac9-31bf-4055-b842-d272849fe1f4/signaling 200 10ms","method":"POST","requestID":"e99b18b0-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/603a3ac9-31bf-4055-b842-d272849fe1f4/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f43965d7-312c-4e81-ae86-63372bf5753a"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"52d79a7345e0fa4bca4e89eb4ce88fbc"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e99cc660-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e99ced70-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":727,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":727,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.824012,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"client_addr":"127.0.0.1:54840","level":"info","msg":"Received request.","req_id":728,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:17Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c8a6f26edbd575cf95eca4bd060a5f99"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e99cc660-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931117,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExN30.RdsicupPkZNSNbW0uWjIH96ARKHxOPD5CRt4kTjfzq4"} gateway-1 | {"time_local":"21/Sep/2024:15:05:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c8a6f26edbd575cf95eca4bd060a5f99"} device-1 | {"level":"info","message":"GET /devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c? 200 14ms","method":"GET","requestID":"c8a6f26edbd575cf95eca4bd060a5f99","responseTime":14,"status":200,"url":"/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c?"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e99cc660-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:54840","level":"info","msg":"Sent response.","req_id":728,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.943908,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e99ced70-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931117,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExN30.RdsicupPkZNSNbW0uWjIH96ARKHxOPD5CRt4kTjfzq4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e99ced70-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd128d35e-1526-4c98-93ce-fc0cb3438d7c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd128d35e-1526-4c98-93ce-fc0cb3438d7c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:15.067325465Z"}]},"request_id":"69456c2a-9666-4db0-9aee-ac0e21ffb2d7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931117.5193565} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExN30.RdsicupPkZNSNbW0uWjIH96ARKHxOPD5CRt4kTjfzq4","level":"info","message":"auth send jwt","requestID":"76f8f56accfa0d6dfb0dd1e881efc0fe"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"76f8f56accfa0d6dfb0dd1e881efc0fe","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e99cc660-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603a3ac9-31bf-4055-b842-d272849fe1f4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603a3ac9-31bf-4055-b842-d272849fe1f4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:15.110527854Z"}]},"request_id":"2a087a6c-8e7a-4f24-b11f-7f967334e5d5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931117.520509} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e99ced70-782a-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"76f8f56accfa0d6dfb0dd1e881efc0fe"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e99cc660-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":729,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:17Z"} device-1 | {"level":"info","message":"GET /devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c? 200 15ms","method":"GET","requestID":"e99cc660-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":729,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.748249,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:17Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e99ced70-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"76f8f56accfa0d6dfb0dd1e881efc0fe","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931117,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExN30.RdsicupPkZNSNbW0uWjIH96ARKHxOPD5CRt4kTjfzq4"} device-1 | {"level":"info","message":"GET /devices/603a3ac9-31bf-4055-b842-d272849fe1f4? 200 15ms","method":"GET","requestID":"e99ced70-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/603a3ac9-31bf-4055-b842-d272849fe1f4?"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"76f8f56accfa0d6dfb0dd1e881efc0fe","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f43965d7-312c-4e81-ae86-63372bf5753a"},"level":"info","message":"Building connection plan","requestID":"52d79a7345e0fa4bca4e89eb4ce88fbc"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"92890dae-eefa-46eb-b090-e0d5bb9f4829"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"a6d5fc36-ecc1-4434-8797-59371fc505e8"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"2bf06bb9-2f3d-4d3b-ac00-eadf7c32df87"}]},"level":"info","message":"Built pairwise service configurations","requestID":"52d79a7345e0fa4bca4e89eb4ce88fbc"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"52d79a7345e0fa4bca4e89eb4ce88fbc"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"e99fac90-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603a3ac9-31bf-4055-b842-d272849fe1f4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603a3ac9-31bf-4055-b842-d272849fe1f4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:15.110527854Z"}]},"request_id":"91cc3522-b0aa-480a-a305-b9a639025630","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931117.5303643} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"76f8f56accfa0d6dfb0dd1e881efc0fe","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":730,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":730,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.73155,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:17Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"76f8f56accfa0d6dfb0dd1e881efc0fe"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e99fac90-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931117,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExN30.RdsicupPkZNSNbW0uWjIH96ARKHxOPD5CRt4kTjfzq4"} gateway-1 | {"time_local":"21/Sep/2024:15:05:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/603a3ac9-31bf-4055-b842-d272849fe1f4? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"76f8f56accfa0d6dfb0dd1e881efc0fe"} device-1 | {"level":"info","message":"GET /devices/603a3ac9-31bf-4055-b842-d272849fe1f4? 200 10ms","method":"GET","requestID":"76f8f56accfa0d6dfb0dd1e881efc0fe","responseTime":10,"status":200,"url":"/devices/603a3ac9-31bf-4055-b842-d272849fe1f4?"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e99fac90-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"8267b466-85c7-4936-bd8c-b40877e9e6a1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931117.5404787} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4e9edf98-082f-4365-8f84-680825175f5c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931117.5407228} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"e99fac90-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"e99fac90-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"e99fac90-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/a4e02d5c-c21e-4897-8584-b24eb988040c'","requestID":"e99fac90-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/a4e02d5c-c21e-4897-8584-b24eb988040c'","requestID":"e99fac90-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"e99fac90-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 23ms","method":"POST","requestID":"e99fac90-782a-11ef-88d4-5fea3f61bb98","responseTime":23,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"e99fac90-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f43965d7-312c-4e81-ae86-63372bf5753a"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"52d79a7345e0fa4bca4e89eb4ce88fbc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e9a774c0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":731,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":731,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.557342,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd128d35e-1526-4c98-93ce-fc0cb3438d7c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8eb059a6-d849-4284-9c5b-7f71cbb051bb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931117.5851176} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e9a774c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"e9a774c0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"device":"d128d35e-1526-4c98-93ce-fc0cb3438d7c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"d128d35e-1526-4c98-93ce-fc0cb3438d7c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e9a774c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c/signaling 200 20ms","method":"POST","requestID":"e9a774c0-782a-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e9aaa910-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":732,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:17Z"} device-1 | {"content":{"sdp":"v=0\r\no=- 8325412536190015978 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:yDbq\r\na=ice-pwd:JHZNtKAotxVRVmWqZylfawKV\r\na=ice-options:trickle\r\na=fingerprint:sha-256 06:B0:E4:19:FC:9D:82:53:05:5D:D1:DB:AE:90:FD:99:F4:20:30:D5:B5:94:41:42:80:E4:D7:DE:EA:CF:C5:DA\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"d128d35e-1526-4c98-93ce-fc0cb3438d7c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603a3ac9-31bf-4055-b842-d272849fe1f4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7a5fc647-0048-42a6-ad1a-e1628595b0da","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931117.6080296} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":732,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.037741,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e9aaa910-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"e9aaa910-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e9aaa910-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/603a3ac9-31bf-4055-b842-d272849fe1f4/signaling 200 17ms","method":"POST","requestID":"e9aaa910-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/603a3ac9-31bf-4055-b842-d272849fe1f4/signaling"} device-1 | {"device":"d128d35e-1526-4c98-93ce-fc0cb3438d7c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"603a3ac9-31bf-4055-b842-d272849fe1f4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"a4e02d5c-c21e-4897-8584-b24eb988040c","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"603a3ac9-31bf-4055-b842-d272849fe1f4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"603a3ac9-31bf-4055-b842-d272849fe1f4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"603a3ac9-31bf-4055-b842-d272849fe1f4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"603a3ac9-31bf-4055-b842-d272849fe1f4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a4e02d5c-c21e-4897-8584-b24eb988040c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a4e02d5c-c21e-4897-8584-b24eb988040c","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"16360bd60d06e971862d6ad3a7c57146","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"16360bd60d06e971862d6ad3a7c57146","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/a4e02d5c-c21e-4897-8584-b24eb988040c"}}},"level":"info","message":"received a callback","requestID":"16360bd60d06e971862d6ad3a7c57146"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"16360bd60d06e971862d6ad3a7c57146","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"16360bd60d06e971862d6ad3a7c57146"} device-1 | {"content":{"candidate":"candidate:2869916235 1 udp 2113937151 64ce1fff-3eb4-4524-9c3a-abaf0884f455.local 50599 typ host generation 0 ufrag yDbq network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"d128d35e-1526-4c98-93ce-fc0cb3438d7c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:941937496 1 udp 1677729535 141.24.211.56 50599 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag yDbq network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"d128d35e-1526-4c98-93ce-fc0cb3438d7c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2248698026 1 udp 33562623 141.24.210.113 51532 typ relay raddr 141.24.211.56 rport 50599 generation 0 ufrag yDbq network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"d128d35e-1526-4c98-93ce-fc0cb3438d7c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"d128d35e-1526-4c98-93ce-fc0cb3438d7c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c'"} device-1 | {"data":{"peerconnection":"a4e02d5c-c21e-4897-8584-b24eb988040c","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"603a3ac9-31bf-4055-b842-d272849fe1f4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d128d35e-1526-4c98-93ce-fc0cb3438d7c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"603a3ac9-31bf-4055-b842-d272849fe1f4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"a4e02d5c-c21e-4897-8584-b24eb988040c","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a4e02d5c-c21e-4897-8584-b24eb988040c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a4e02d5c-c21e-4897-8584-b24eb988040c","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"abf4be68c1441617d8a0593b3f175c4d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"abf4be68c1441617d8a0593b3f175c4d","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/a4e02d5c-c21e-4897-8584-b24eb988040c"}}},"level":"info","message":"received a callback","requestID":"abf4be68c1441617d8a0593b3f175c4d"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"eaea2df0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":733,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:19Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa4e02d5c-c21e-4897-8584-b24eb988040c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8b076ada-efa2-4054-b329-bf13e84b61b2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931119.7023206} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":733,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.691318,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a4e02d5c-c21e-4897-8584-b24eb988040c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"eaea2df0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/a4e02d5c-c21e-4897-8584-b24eb988040c","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"eaea2df0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"eaea2df0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/a4e02d5c-c21e-4897-8584-b24eb988040c 200 13ms","method":"GET","requestID":"eaea2df0-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/peerconnections/a4e02d5c-c21e-4897-8584-b24eb988040c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 40ms","method":"POST","requestID":"abf4be68c1441617d8a0593b3f175c4d","responseTime":40,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch","requestID":"abf4be68c1441617d8a0593b3f175c4d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eaef8520-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":734,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:19Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603a3ac9-31bf-4055-b842-d272849fe1f4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"252b6243-cc7b-4c72-a4c0-83bde9ccd429","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931119.7364764} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":734,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.971268,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"eaef8520-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"eaef8520-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eaef8520-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/603a3ac9-31bf-4055-b842-d272849fe1f4/signaling 200 13ms","method":"POST","requestID":"eaef8520-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/603a3ac9-31bf-4055-b842-d272849fe1f4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eaf1cf10-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":735,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:19Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd128d35e-1526-4c98-93ce-fc0cb3438d7c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"50920c9d-d50a-4e63-947e-cf2a3dd8d506","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931119.7521832} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":735,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.609333,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"eaf1cf10-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"eaf1cf10-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eaf1cf10-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c/signaling 200 13ms","method":"POST","requestID":"eaf1cf10-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExOX0.PBE7H5xI11Jtzz5Sr5oWskLfdnjDgyF_6JoGgRhN71Y","level":"info","message":"auth send jwt","requestID":"ae61046260d6ccdf391bfc8e98efedd0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ae61046260d6ccdf391bfc8e98efedd0","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/f43965d7-312c-4e81-ae86-63372bf5753a","requestID":"ae61046260d6ccdf391bfc8e98efedd0"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":736,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:19Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":736,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.744753,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f43965d7-312c-4e81-ae86-63372bf5753a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ae61046260d6ccdf391bfc8e98efedd0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/f43965d7-312c-4e81-ae86-63372bf5753a","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931119,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExOX0.PBE7H5xI11Jtzz5Sr5oWskLfdnjDgyF_6JoGgRhN71Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ae61046260d6ccdf391bfc8e98efedd0","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/f43965d7-312c-4e81-ae86-63372bf5753a","requestID":"ae61046260d6ccdf391bfc8e98efedd0"} gateway-1 | {"time_local":"21/Sep/2024:15:05:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/f43965d7-312c-4e81-ae86-63372bf5753a HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ae61046260d6ccdf391bfc8e98efedd0"} experiment-1 | {"level":"info","message":"GET /experiments/f43965d7-312c-4e81-ae86-63372bf5753a 200 17ms","method":"GET","requestID":"ae61046260d6ccdf391bfc8e98efedd0","responseTime":17,"status":200,"url":"/experiments/f43965d7-312c-4e81-ae86-63372bf5753a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExOX0.PBE7H5xI11Jtzz5Sr5oWskLfdnjDgyF_6JoGgRhN71Y","level":"info","message":"auth send jwt","requestID":"9da5f5ad6a4608da14dd2532457f10f5"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9da5f5ad6a4608da14dd2532457f10f5","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/f43965d7-312c-4e81-ae86-63372bf5753a","requestID":"9da5f5ad6a4608da14dd2532457f10f5"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":737,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:19Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":737,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.301813,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:19Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f43965d7-312c-4e81-ae86-63372bf5753a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"9da5f5ad6a4608da14dd2532457f10f5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/f43965d7-312c-4e81-ae86-63372bf5753a","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931119,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExOX0.PBE7H5xI11Jtzz5Sr5oWskLfdnjDgyF_6JoGgRhN71Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9da5f5ad6a4608da14dd2532457f10f5","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f43965d7-312c-4e81-ae86-63372bf5753a"},"level":"info","message":"Attempting to finish experiment","requestID":"9da5f5ad6a4608da14dd2532457f10f5"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"eafe7940-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":738,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:19Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":738,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.107811,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:19Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a4e02d5c-c21e-4897-8584-b24eb988040c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"eafe7940-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/a4e02d5c-c21e-4897-8584-b24eb988040c","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931119,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExOX0.PBE7H5xI11Jtzz5Sr5oWskLfdnjDgyF_6JoGgRhN71Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"eafe7940-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/a4e02d5c-c21e-4897-8584-b24eb988040c","device":"d128d35e-1526-4c98-93ce-fc0cb3438d7c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"603a3ac9-31bf-4055-b842-d272849fe1f4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"603a3ac9-31bf-4055-b842-d272849fe1f4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"603a3ac9-31bf-4055-b842-d272849fe1f4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a4e02d5c-c21e-4897-8584-b24eb988040c' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/a4e02d5c-c21e-4897-8584-b24eb988040c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a4e02d5c-c21e-4897-8584-b24eb988040c","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cb806091eb97c17897b5404b070daf6e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"cb806091eb97c17897b5404b070daf6e","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"01aae5792b52486acfc38328e4e22e89","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a4e02d5c-c21e-4897-8584-b24eb988040c"}}},"level":"info","message":"received a callback","requestID":"cb806091eb97c17897b5404b070daf6e"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"01aae5792b52486acfc38328e4e22e89","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a4e02d5c-c21e-4897-8584-b24eb988040c"}}},"level":"info","message":"received a callback","requestID":"01aae5792b52486acfc38328e4e22e89"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa4e02d5c-c21e-4897-8584-b24eb988040c': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa4e02d5c-c21e-4897-8584-b24eb988040c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"b2e98b99-d0c1-4949-84c8-c52ca1768ad0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931119.8634658} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e8994d3f-79af-4648-86b4-a8afb57f2240","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931119.8638318} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"eafe7940-782a-11ef-88d4-5fea3f61bb98","responseTime":22,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"a4e02d5c-c21e-4897-8584-b24eb988040c","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"eafe7940-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/a4e02d5c-c21e-4897-8584-b24eb988040c 204 53ms","method":"DELETE","requestID":"eafe7940-782a-11ef-88d4-5fea3f61bb98","responseTime":53,"status":204,"url":"/peerconnections/a4e02d5c-c21e-4897-8584-b24eb988040c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f43965d7-312c-4e81-ae86-63372bf5753a"},"level":"info","message":"Successfully finished experiment","requestID":"9da5f5ad6a4608da14dd2532457f10f5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eb0a3910-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":739,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:19Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603a3ac9-31bf-4055-b842-d272849fe1f4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ae0e7aca-d936-4679-bfaf-a7be74252fb2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931119.9113123} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":739,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.389528,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"eb0a3910-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"eb0a3910-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eb0a3910-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/603a3ac9-31bf-4055-b842-d272849fe1f4/signaling 200 14ms","method":"POST","requestID":"eb0a3910-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/603a3ac9-31bf-4055-b842-d272849fe1f4/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff43965d7-312c-4e81-ae86-63372bf5753a': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff43965d7-312c-4e81-ae86-63372bf5753a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"e8e2e4d1-c2dd-40b6-a2bc-6258ad052b0c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931119.9198139} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"04da0c28-91e4-49dc-aa97-ba3a1f98e50e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931119.9200473} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eb0caa10-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"9da5f5ad6a4608da14dd2532457f10f5","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":740,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:19Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd128d35e-1526-4c98-93ce-fc0cb3438d7c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5ac0b5da-27a3-472d-89e2-881892819b05","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931119.9266887} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":740,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.230918,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"eb0caa10-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"eb0caa10-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eb0caa10-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c/signaling 200 12ms","method":"POST","requestID":"eb0caa10-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/f43965d7-312c-4e81-ae86-63372bf5753a","requestID":"9da5f5ad6a4608da14dd2532457f10f5"} gateway-1 | {"time_local":"21/Sep/2024:15:05:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/f43965d7-312c-4e81-ae86-63372bf5753a HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.181","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9da5f5ad6a4608da14dd2532457f10f5"} experiment-1 | {"level":"info","message":"DELETE /experiments/f43965d7-312c-4e81-ae86-63372bf5753a 204 175ms","method":"DELETE","requestID":"9da5f5ad6a4608da14dd2532457f10f5","responseTime":175,"status":204,"url":"/experiments/f43965d7-312c-4e81-ae86-63372bf5753a"} gateway-1 | {"time_local":"21/Sep/2024:15:05:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3661","request_time":"4.334","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"2dbe467e3524ea633ad9f6f3201c3bef"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 132ms","method":"POST","requestID":"cb806091eb97c17897b5404b070daf6e","responseTime":132,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.137","http_referrer":"","http_user_agent":"node-fetch","requestID":"cb806091eb97c17897b5404b070daf6e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 131ms","method":"POST","requestID":"01aae5792b52486acfc38328e4e22e89","responseTime":131,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.138","http_referrer":"","http_user_agent":"node-fetch","requestID":"01aae5792b52486acfc38328e4e22e89"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExOX0.PBE7H5xI11Jtzz5Sr5oWskLfdnjDgyF_6JoGgRhN71Y","level":"info","message":"auth send jwt","requestID":"0c731ab73599e581652a57b76c31ad87"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"0c731ab73599e581652a57b76c31ad87","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0c731ab73599e581652a57b76c31ad87"} gateway-1 | {"time_local":"21/Sep/2024:15:05:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3127","request_time":"2.806","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"98f283271454047398a3478fa5fea7a4"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":741,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:20Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":741,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.923118,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:20Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/603a3ac9-31bf-4055-b842-d272849fe1f4' closed"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0c731ab73599e581652a57b76c31ad87","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931119,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTExOX0.PBE7H5xI11Jtzz5Sr5oWskLfdnjDgyF_6JoGgRhN71Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0c731ab73599e581652a57b76c31ad87","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/d128d35e-1526-4c98-93ce-fc0cb3438d7c' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1529567-aa61-4306-9ef1-2ba570702d1b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"8ce87c12-6c48-4920-90ce-6996bc8fc8b3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931120.020806} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0c731ab73599e581652a57b76c31ad87","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4b67e11f-a6aa-45aa-9944-fda508af2a9a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931120.0267107} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"0c731ab73599e581652a57b76c31ad87","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1529567-aa61-4306-9ef1-2ba570702d1b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"90991012-1dcc-4ab7-b3db-5db22e7fe113","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931120.0378604} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bea7ad62-d2bd-4c37-b39b-1ef904c20427","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931120.038131} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"0c731ab73599e581652a57b76c31ad87","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1529567-aa61-4306-9ef1-2ba570702d1b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1529567-aa61-4306-9ef1-2ba570702d1b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:20.037837446Z"}]},"request_id":"968eced5-db97-4727-901c-351f3fc8baf4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931120.0426242} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0c731ab73599e581652a57b76c31ad87","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0c731ab73599e581652a57b76c31ad87"} gateway-1 | {"time_local":"21/Sep/2024:15:05:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0c731ab73599e581652a57b76c31ad87"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"0c731ab73599e581652a57b76c31ad87","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyMH0.kMbkkWH8Blr3DUI9fXAqCkqeuXC8kbNVjvYYU13Am50","level":"info","message":"auth send jwt","requestID":"1bd50780c149baaf98897add9a4e3c00"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1bd50780c149baaf98897add9a4e3c00","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1bd50780c149baaf98897add9a4e3c00"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":742,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:20Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":742,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.773626,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1bd50780c149baaf98897add9a4e3c00","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931120,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyMH0.kMbkkWH8Blr3DUI9fXAqCkqeuXC8kbNVjvYYU13Am50"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1bd50780c149baaf98897add9a4e3c00","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa09d3f16-57bc-4591-82a7-54f4a056bde3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c29700c5-edcf-4a96-b91d-bf93a656145d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931120.0735657} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1bd50780c149baaf98897add9a4e3c00","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e2ff7b53-3e8a-4f63-b141-9b0296b6c320","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931120.078174} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"1bd50780c149baaf98897add9a4e3c00","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa09d3f16-57bc-4591-82a7-54f4a056bde3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"7e7e7d38-dcf7-4035-98f4-a0c27d104dc3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931120.0886762} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"405ad6ca-09a4-4777-92a4-831823e0c5a8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931120.0888312} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"1bd50780c149baaf98897add9a4e3c00","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa09d3f16-57bc-4591-82a7-54f4a056bde3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa09d3f16-57bc-4591-82a7-54f4a056bde3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:20.088642699Z"}]},"request_id":"2fc3b9de-c3dd-4a84-aed2-bc9f26cc041c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931120.0928864} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1bd50780c149baaf98897add9a4e3c00","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1bd50780c149baaf98897add9a4e3c00"} gateway-1 | {"time_local":"21/Sep/2024:15:05:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1bd50780c149baaf98897add9a4e3c00"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"1bd50780c149baaf98897add9a4e3c00","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyMH0.kMbkkWH8Blr3DUI9fXAqCkqeuXC8kbNVjvYYU13Am50","level":"info","message":"auth send jwt","requestID":"cb01964318e3f40f876a9f1800037ae9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cb01964318e3f40f876a9f1800037ae9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"cb01964318e3f40f876a9f1800037ae9"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":743,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:20Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":743,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.11627,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:20Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cb01964318e3f40f876a9f1800037ae9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931120,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyMH0.kMbkkWH8Blr3DUI9fXAqCkqeuXC8kbNVjvYYU13Am50"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cb01964318e3f40f876a9f1800037ae9","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1529567-aa61-4306-9ef1-2ba570702d1b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1529567-aa61-4306-9ef1-2ba570702d1b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:20.037837446Z"}]},"request_id":"6bf5c147-57dd-4ae6-80ab-b5090cd319aa","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931120.589797} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cb01964318e3f40f876a9f1800037ae9","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a32a98d5-90d7-4f33-9b3c-7cf4fd5e658a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931120.5965338} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"cb01964318e3f40f876a9f1800037ae9","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1529567-aa61-4306-9ef1-2ba570702d1b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1529567-aa61-4306-9ef1-2ba570702d1b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:20.037837446Z"}]},"request_id":"64858b00-b7e7-4844-b61b-825273d46aec","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931120.609196} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cb01964318e3f40f876a9f1800037ae9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"cb01964318e3f40f876a9f1800037ae9"} device-1 | {"level":"info","message":"PATCH /devices/e1529567-aa61-4306-9ef1-2ba570702d1b 200 37ms","method":"PATCH","requestID":"cb01964318e3f40f876a9f1800037ae9","responseTime":37,"status":200,"url":"/devices/e1529567-aa61-4306-9ef1-2ba570702d1b"} gateway-1 | {"time_local":"21/Sep/2024:15:05:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e1529567-aa61-4306-9ef1-2ba570702d1b HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.043","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"cb01964318e3f40f876a9f1800037ae9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyMH0.kMbkkWH8Blr3DUI9fXAqCkqeuXC8kbNVjvYYU13Am50","level":"info","message":"auth send jwt","requestID":"f9baed2b251645d6f033ecb612b30c1a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f9baed2b251645d6f033ecb612b30c1a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f9baed2b251645d6f033ecb612b30c1a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":744,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:20Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":744,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.944241,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:20Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f9baed2b251645d6f033ecb612b30c1a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931120,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyMH0.kMbkkWH8Blr3DUI9fXAqCkqeuXC8kbNVjvYYU13Am50"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f9baed2b251645d6f033ecb612b30c1a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f9baed2b251645d6f033ecb612b30c1a"} gateway-1 | {"time_local":"21/Sep/2024:15:05:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e1529567-aa61-4306-9ef1-2ba570702d1b/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f9baed2b251645d6f033ecb612b30c1a"} device-1 | {"level":"info","message":"POST /devices/e1529567-aa61-4306-9ef1-2ba570702d1b/websocket 200 18ms","method":"POST","requestID":"f9baed2b251645d6f033ecb612b30c1a","responseTime":18,"status":200,"url":"/devices/e1529567-aa61-4306-9ef1-2ba570702d1b/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9e5078962876869e3a6ea65d6168b067","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9e5078962876869e3a6ea65d6168b067","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a09d3f16-57bc-4591-82a7-54f4a056bde3/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.005","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9e5078962876869e3a6ea65d6168b067"} device-1 | {"level":"info","message":"OPTIONS /devices/a09d3f16-57bc-4591-82a7-54f4a056bde3/websocket 200 1ms","method":"OPTIONS","requestID":"9e5078962876869e3a6ea65d6168b067","responseTime":1,"status":200,"url":"/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyMn0.qGWujgEBOWE9uOWp4HzviDpCUpbtp6zLhncdKvTgEbQ","level":"info","message":"auth send jwt","requestID":"e5400c9ed2991ae0248216e99a080298"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"e5400c9ed2991ae0248216e99a080298","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e5400c9ed2991ae0248216e99a080298"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":745,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":745,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.154667,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e5400c9ed2991ae0248216e99a080298","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931122,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyMn0.qGWujgEBOWE9uOWp4HzviDpCUpbtp6zLhncdKvTgEbQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e5400c9ed2991ae0248216e99a080298","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e5400c9ed2991ae0248216e99a080298"} gateway-1 | {"time_local":"21/Sep/2024:15:05:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a09d3f16-57bc-4591-82a7-54f4a056bde3/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e5400c9ed2991ae0248216e99a080298"} device-1 | {"level":"info","message":"POST /devices/a09d3f16-57bc-4591-82a7-54f4a056bde3/websocket 200 21ms","method":"POST","requestID":"e5400c9ed2991ae0248216e99a080298","responseTime":21,"status":200,"url":"/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7634a80a70da429a3fc570712a816f0e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7634a80a70da429a3fc570712a816f0e","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a09d3f16-57bc-4591-82a7-54f4a056bde3? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"7634a80a70da429a3fc570712a816f0e"} device-1 | {"level":"info","message":"OPTIONS /devices/a09d3f16-57bc-4591-82a7-54f4a056bde3? 200 2ms","method":"OPTIONS","requestID":"7634a80a70da429a3fc570712a816f0e","responseTime":2,"status":200,"url":"/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyMn0.qGWujgEBOWE9uOWp4HzviDpCUpbtp6zLhncdKvTgEbQ","level":"info","message":"auth send jwt","requestID":"946f1126da354175ec5aa6266ee8fba3"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"946f1126da354175ec5aa6266ee8fba3","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"946f1126da354175ec5aa6266ee8fba3"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":746,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":746,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.219343,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"946f1126da354175ec5aa6266ee8fba3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931122,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyMn0.qGWujgEBOWE9uOWp4HzviDpCUpbtp6zLhncdKvTgEbQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"946f1126da354175ec5aa6266ee8fba3","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa09d3f16-57bc-4591-82a7-54f4a056bde3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa09d3f16-57bc-4591-82a7-54f4a056bde3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:20.088642699Z"}]},"request_id":"e8055a8d-e903-4974-b487-b8ecdb079e8a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931122.2426724} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"946f1126da354175ec5aa6266ee8fba3","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"21970aa7-2a9a-40ef-836a-edfb2770a849","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931122.2504272} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"946f1126da354175ec5aa6266ee8fba3","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa09d3f16-57bc-4591-82a7-54f4a056bde3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa09d3f16-57bc-4591-82a7-54f4a056bde3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:20.088642699Z"}]},"request_id":"a8036cd0-0d11-40c4-865c-e43789c5a582","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931122.261358} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"946f1126da354175ec5aa6266ee8fba3","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"946f1126da354175ec5aa6266ee8fba3"} gateway-1 | {"time_local":"21/Sep/2024:15:05:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a09d3f16-57bc-4591-82a7-54f4a056bde3? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.043","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"946f1126da354175ec5aa6266ee8fba3"} device-1 | {"level":"info","message":"PATCH /devices/a09d3f16-57bc-4591-82a7-54f4a056bde3? 200 36ms","method":"PATCH","requestID":"946f1126da354175ec5aa6266ee8fba3","responseTime":36,"status":200,"url":"/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyMn0.qGWujgEBOWE9uOWp4HzviDpCUpbtp6zLhncdKvTgEbQ","level":"info","message":"auth send jwt","requestID":"ac640286a0318f351b2c471492eb520c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ac640286a0318f351b2c471492eb520c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ac640286a0318f351b2c471492eb520c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":747,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":747,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.272296,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ac640286a0318f351b2c471492eb520c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931122,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyMn0.qGWujgEBOWE9uOWp4HzviDpCUpbtp6zLhncdKvTgEbQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ac640286a0318f351b2c471492eb520c","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1529567-aa61-4306-9ef1-2ba570702d1b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1529567-aa61-4306-9ef1-2ba570702d1b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:20.037837446Z"}]},"request_id":"f2ab8ace-ff61-401d-8689-9a6fa1949e28","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931122.2919464} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ac640286a0318f351b2c471492eb520c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ac640286a0318f351b2c471492eb520c"} gateway-1 | {"time_local":"21/Sep/2024:15:05:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e1529567-aa61-4306-9ef1-2ba570702d1b? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ac640286a0318f351b2c471492eb520c"} device-1 | {"level":"info","message":"GET /devices/e1529567-aa61-4306-9ef1-2ba570702d1b? 200 17ms","method":"GET","requestID":"ac640286a0318f351b2c471492eb520c","responseTime":17,"status":200,"url":"/devices/e1529567-aa61-4306-9ef1-2ba570702d1b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyMn0.qGWujgEBOWE9uOWp4HzviDpCUpbtp6zLhncdKvTgEbQ","level":"info","message":"auth send jwt","requestID":"76903a6e5387ee4ab5286dcbe5dbb979"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"76903a6e5387ee4ab5286dcbe5dbb979","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"76903a6e5387ee4ab5286dcbe5dbb979"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":748,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":748,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.536705,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"76903a6e5387ee4ab5286dcbe5dbb979","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931122,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyMn0.qGWujgEBOWE9uOWp4HzviDpCUpbtp6zLhncdKvTgEbQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"76903a6e5387ee4ab5286dcbe5dbb979","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa09d3f16-57bc-4591-82a7-54f4a056bde3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa09d3f16-57bc-4591-82a7-54f4a056bde3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:20.088642699Z"}]},"request_id":"f255bd23-fbdc-4fcc-9997-5a1e3eac4491","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931122.3189807} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"76903a6e5387ee4ab5286dcbe5dbb979","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"76903a6e5387ee4ab5286dcbe5dbb979"} gateway-1 | {"time_local":"21/Sep/2024:15:05:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a09d3f16-57bc-4591-82a7-54f4a056bde3? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"76903a6e5387ee4ab5286dcbe5dbb979"} device-1 | {"level":"info","message":"GET /devices/a09d3f16-57bc-4591-82a7-54f4a056bde3? 200 18ms","method":"GET","requestID":"76903a6e5387ee4ab5286dcbe5dbb979","responseTime":18,"status":200,"url":"/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyMn0.qGWujgEBOWE9uOWp4HzviDpCUpbtp6zLhncdKvTgEbQ","level":"info","message":"auth send jwt","requestID":"25fe22fc8d939057887749a3678cee9a"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"25fe22fc8d939057887749a3678cee9a","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"25fe22fc8d939057887749a3678cee9a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":749,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":749,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.289353,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"25fe22fc8d939057887749a3678cee9a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931122,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyMn0.qGWujgEBOWE9uOWp4HzviDpCUpbtp6zLhncdKvTgEbQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"25fe22fc8d939057887749a3678cee9a","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f"},"level":"info","message":"Attempting to run experiment","requestID":"25fe22fc8d939057887749a3678cee9a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f"},"level":"info","message":"Attempting to book experiment","requestID":"25fe22fc8d939057887749a3678cee9a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f"},"level":"info","message":"Successfully booked experiment","requestID":"25fe22fc8d939057887749a3678cee9a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ec82f660-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ec834480-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":750,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":750,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.106391,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ec82f660-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931122,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyMn0.qGWujgEBOWE9uOWp4HzviDpCUpbtp6zLhncdKvTgEbQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ec82f660-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58220","level":"info","msg":"Received request.","req_id":751,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58220","level":"info","msg":"Sent response.","req_id":751,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.65821,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ec834480-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931122,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyMn0.qGWujgEBOWE9uOWp4HzviDpCUpbtp6zLhncdKvTgEbQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"ec834480-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1529567-aa61-4306-9ef1-2ba570702d1b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1529567-aa61-4306-9ef1-2ba570702d1b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:20.037837446Z"}]},"request_id":"146466a5-add1-404f-ac04-41fa7215212f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931122.3867168} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ec82f660-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa09d3f16-57bc-4591-82a7-54f4a056bde3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa09d3f16-57bc-4591-82a7-54f4a056bde3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:20.088642699Z"}]},"request_id":"f50321e0-d4f5-4d90-9df4-add1aa324755","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931122.3921418} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ec82f660-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ec834480-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/e1529567-aa61-4306-9ef1-2ba570702d1b? 200 20ms","method":"GET","requestID":"ec82f660-782a-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/e1529567-aa61-4306-9ef1-2ba570702d1b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ec834480-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/a09d3f16-57bc-4591-82a7-54f4a056bde3? 200 20ms","method":"GET","requestID":"ec834480-782a-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f"},"level":"info","message":"Setting up experiment","requestID":"25fe22fc8d939057887749a3678cee9a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"25fe22fc8d939057887749a3678cee9a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f"},"level":"info","message":"Successfully locked booking for experiment","requestID":"25fe22fc8d939057887749a3678cee9a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"25fe22fc8d939057887749a3678cee9a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"25fe22fc8d939057887749a3678cee9a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f"},"level":"info","message":"Attempting to update booking for experiment","requestID":"25fe22fc8d939057887749a3678cee9a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f"},"level":"info","message":"Successfully updated booking for experiment","requestID":"25fe22fc8d939057887749a3678cee9a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f"},"level":"info","message":"Successfully set up experiment","requestID":"25fe22fc8d939057887749a3678cee9a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ec8ce170-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ec8d2f90-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ec8da4c0-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f"},"level":"info","message":"Successfully running experiment","requestID":"25fe22fc8d939057887749a3678cee9a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":752,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58220","level":"info","msg":"Received request.","req_id":753,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":752,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.041008,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ec8ce170-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931122,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyMn0.qGWujgEBOWE9uOWp4HzviDpCUpbtp6zLhncdKvTgEbQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ec8ce170-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58220","level":"info","msg":"Sent response.","req_id":753,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.454426,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ec8d2f90-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931122,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyMn0.qGWujgEBOWE9uOWp4HzviDpCUpbtp6zLhncdKvTgEbQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"ec8d2f90-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58228","level":"info","msg":"Received request.","req_id":754,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1529567-aa61-4306-9ef1-2ba570702d1b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1529567-aa61-4306-9ef1-2ba570702d1b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:20.037837446Z"}]},"request_id":"21162677-6598-4641-8fd9-137cb53e4a0e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931122.4563258} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1529567-aa61-4306-9ef1-2ba570702d1b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"34037104-e456-4ea2-a9ac-65b17b33f668","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931122.4567258} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ec8ce170-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa09d3f16-57bc-4591-82a7-54f4a056bde3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa09d3f16-57bc-4591-82a7-54f4a056bde3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:20.088642699Z"}]},"request_id":"009c9bbc-c1a1-41ea-ba54-9c38d1c5fc37","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931122.4577608} authorization-1 | {"client_addr":"127.0.0.1:58228","level":"info","msg":"Sent response.","req_id":754,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.307204,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ec8da4c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"ec8da4c0-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"ec8d2f90-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F078c3797-df48-4009-b0dc-cf2380c4fc9f#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F078c3797-df48-4009-b0dc-cf2380c4fc9f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"76cd4125-d13b-4314-af66-23277d39f8fe","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931122.465721} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"56c782af-0e91-47f5-8b0e-68ea8246f377","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931122.466998} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"25fe22fc8d939057887749a3678cee9a","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ec8ce170-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/e1529567-aa61-4306-9ef1-2ba570702d1b? 200 31ms","method":"GET","requestID":"ec8ce170-782a-11ef-88d4-5fea3f61bb98","responseTime":31,"status":200,"url":"/devices/e1529567-aa61-4306-9ef1-2ba570702d1b?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ec8da4c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/e1529567-aa61-4306-9ef1-2ba570702d1b/signaling 200 27ms","method":"POST","requestID":"ec8da4c0-782a-11ef-88d4-5fea3f61bb98","responseTime":27,"status":200,"url":"/devices/e1529567-aa61-4306-9ef1-2ba570702d1b/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ec8d2f90-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/a09d3f16-57bc-4591-82a7-54f4a056bde3? 200 31ms","method":"GET","requestID":"ec8d2f90-782a-11ef-88d4-5fea3f61bb98","responseTime":31,"status":200,"url":"/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ec925fb0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":755,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:22Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ec92fbf0-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"25fe22fc8d939057887749a3678cee9a"} gateway-1 | {"time_local":"21/Sep/2024:15:05:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.155","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"25fe22fc8d939057887749a3678cee9a"} experiment-1 | {"level":"info","message":"POST /experiments? 201 147ms","method":"POST","requestID":"25fe22fc8d939057887749a3678cee9a","responseTime":147,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa09d3f16-57bc-4591-82a7-54f4a056bde3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4201a6ec-033f-42d2-a7ab-464079aa8f47","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931122.4814947} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":755,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.184455,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58220","level":"info","msg":"Received request.","req_id":756,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ec925fb0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ec925fb0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1529567-aa61-4306-9ef1-2ba570702d1b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3e96ea6a-500a-42bd-bc4c-22409ec763ed","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931122.484551} authorization-1 | {"client_addr":"127.0.0.1:58220","level":"info","msg":"Sent response.","req_id":756,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.565262,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:22Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyMn0.qGWujgEBOWE9uOWp4HzviDpCUpbtp6zLhncdKvTgEbQ","level":"info","message":"auth send jwt","requestID":"a644eeb70e51d626dab0efeebc53867b"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ec92fbf0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ec92fbf0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a644eeb70e51d626dab0efeebc53867b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ec925fb0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a09d3f16-57bc-4591-82a7-54f4a056bde3/signaling 200 13ms","method":"POST","requestID":"ec925fb0-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a644eeb70e51d626dab0efeebc53867b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ec92fbf0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":757,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:22Z"} device-1 | {"level":"info","message":"POST /devices/e1529567-aa61-4306-9ef1-2ba570702d1b/signaling 200 12ms","method":"POST","requestID":"ec92fbf0-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/e1529567-aa61-4306-9ef1-2ba570702d1b/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":757,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.897914,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a644eeb70e51d626dab0efeebc53867b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931122,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyMn0.qGWujgEBOWE9uOWp4HzviDpCUpbtp6zLhncdKvTgEbQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a644eeb70e51d626dab0efeebc53867b","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ec951ed0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":758,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1529567-aa61-4306-9ef1-2ba570702d1b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1529567-aa61-4306-9ef1-2ba570702d1b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:20.037837446Z"}]},"request_id":"3134a174-e039-46ea-8cfc-002f77ffd6c7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931122.500251} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa09d3f16-57bc-4591-82a7-54f4a056bde3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d4f9dfdf-f2f3-490e-8673-ebe23febdbf1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931122.5003903} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"a644eeb70e51d626dab0efeebc53867b","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":758,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.743871,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ec951ed0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"ec951ed0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a644eeb70e51d626dab0efeebc53867b"} gateway-1 | {"time_local":"21/Sep/2024:15:05:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e1529567-aa61-4306-9ef1-2ba570702d1b? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a644eeb70e51d626dab0efeebc53867b"} device-1 | {"level":"info","message":"GET /devices/e1529567-aa61-4306-9ef1-2ba570702d1b? 200 17ms","method":"GET","requestID":"a644eeb70e51d626dab0efeebc53867b","responseTime":17,"status":200,"url":"/devices/e1529567-aa61-4306-9ef1-2ba570702d1b?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ec951ed0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a09d3f16-57bc-4591-82a7-54f4a056bde3/signaling 200 13ms","method":"POST","requestID":"ec951ed0-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"25fe22fc8d939057887749a3678cee9a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ec9768c0-782a-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyMn0.qGWujgEBOWE9uOWp4HzviDpCUpbtp6zLhncdKvTgEbQ","level":"info","message":"auth send jwt","requestID":"3800e410f77f16be80fef4b82c822bf0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3800e410f77f16be80fef4b82c822bf0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ec97b6e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3800e410f77f16be80fef4b82c822bf0"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":759,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":759,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.724462,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58220","level":"info","msg":"Received request.","req_id":760,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ec9768c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931122,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyMn0.qGWujgEBOWE9uOWp4HzviDpCUpbtp6zLhncdKvTgEbQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ec9768c0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58220","level":"info","msg":"Sent response.","req_id":760,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.7824,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ec97b6e0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931122,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyMn0.qGWujgEBOWE9uOWp4HzviDpCUpbtp6zLhncdKvTgEbQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ec97b6e0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":761,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":761,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.890913,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"3800e410f77f16be80fef4b82c822bf0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931122,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyMn0.qGWujgEBOWE9uOWp4HzviDpCUpbtp6zLhncdKvTgEbQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3800e410f77f16be80fef4b82c822bf0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1529567-aa61-4306-9ef1-2ba570702d1b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1529567-aa61-4306-9ef1-2ba570702d1b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:20.037837446Z"}]},"request_id":"d8e93635-e3e1-4e1a-a2dd-4b28ef3f1fb7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931122.5173128} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ec9768c0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa09d3f16-57bc-4591-82a7-54f4a056bde3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa09d3f16-57bc-4591-82a7-54f4a056bde3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:20.088642699Z"}]},"request_id":"3866babc-452d-4131-842b-f499cfcf4aaa","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931122.5197186} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ec97b6e0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa09d3f16-57bc-4591-82a7-54f4a056bde3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa09d3f16-57bc-4591-82a7-54f4a056bde3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:20.088642699Z"}]},"request_id":"dc5cc90b-7fc6-42e5-bd20-748653fe4efd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931122.5216038} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3800e410f77f16be80fef4b82c822bf0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ec9768c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/e1529567-aa61-4306-9ef1-2ba570702d1b? 200 17ms","method":"GET","requestID":"ec9768c0-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/e1529567-aa61-4306-9ef1-2ba570702d1b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ec97b6e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/a09d3f16-57bc-4591-82a7-54f4a056bde3? 200 16ms","method":"GET","requestID":"ec97b6e0-782a-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3800e410f77f16be80fef4b82c822bf0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f"},"level":"info","message":"Building connection plan","requestID":"25fe22fc8d939057887749a3678cee9a"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"f8d5c5b6-cf69-4eac-bb97-4cfa8c1e75be"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"80b6d0cd-d274-4b8c-83e4-abb188607dd5"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"404ced78-5641-46ed-9bed-269e8da6537b"}]},"level":"info","message":"Built pairwise service configurations","requestID":"25fe22fc8d939057887749a3678cee9a"} device-1 | {"level":"info","message":"GET /devices/a09d3f16-57bc-4591-82a7-54f4a056bde3? 200 16ms","method":"GET","requestID":"3800e410f77f16be80fef4b82c822bf0","responseTime":16,"status":200,"url":"/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3?"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"25fe22fc8d939057887749a3678cee9a"} gateway-1 | {"time_local":"21/Sep/2024:15:05:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a09d3f16-57bc-4591-82a7-54f4a056bde3? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3800e410f77f16be80fef4b82c822bf0"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"ec9a7600-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":762,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":762,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.713826,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ec9a7600-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931122,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyMn0.qGWujgEBOWE9uOWp4HzviDpCUpbtp6zLhncdKvTgEbQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ec9a7600-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"47ee468b-2bdc-4dbf-b8c0-f3db96c0b2df","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931122.53835} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a7ba3908-e5f2-488a-8b55-f14a95647190","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931122.538594} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"ec9a7600-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"ec9a7600-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"ec9a7600-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/566b774c-3633-4ecf-8aa4-c751601866dd'","requestID":"ec9a7600-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/566b774c-3633-4ecf-8aa4-c751601866dd'","requestID":"ec9a7600-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"ec9a7600-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 26ms","method":"POST","requestID":"ec9a7600-782a-11ef-88d4-5fea3f61bb98","responseTime":26,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"ec9a7600-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"25fe22fc8d939057887749a3678cee9a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eca2b360-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":763,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1529567-aa61-4306-9ef1-2ba570702d1b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"093e9b6c-15f0-4f45-a6fb-63ef420913c9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931122.5866306} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":763,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.239779,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"eca2b360-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"eca2b360-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eca2b360-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/e1529567-aa61-4306-9ef1-2ba570702d1b/signaling 200 9ms","method":"POST","requestID":"eca2b360-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/e1529567-aa61-4306-9ef1-2ba570702d1b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eca43a00-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":764,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa09d3f16-57bc-4591-82a7-54f4a056bde3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"75040afa-38ce-460d-868c-bf6a27834d98","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931122.5969481} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":764,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.282514,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"eca43a00-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"eca43a00-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eca43a00-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a09d3f16-57bc-4591-82a7-54f4a056bde3/signaling 200 10ms","method":"POST","requestID":"eca43a00-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3/signaling"} device-1 | {"device":"a09d3f16-57bc-4591-82a7-54f4a056bde3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"a09d3f16-57bc-4591-82a7-54f4a056bde3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 6589895469569665730 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:vgIr\r\na=ice-pwd:HYoxvSD68LLfSyGwEHcRnV8N\r\na=ice-options:trickle\r\na=fingerprint:sha-256 31:BD:04:3D:B9:06:A0:AE:8F:71:62:10:FB:56:9A:C5:2D:77:53:23:19:64:F2:66:B0:65:C4:C8:DC:CB:36:CE\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"a09d3f16-57bc-4591-82a7-54f4a056bde3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"a09d3f16-57bc-4591-82a7-54f4a056bde3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"e1529567-aa61-4306-9ef1-2ba570702d1b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"566b774c-3633-4ecf-8aa4-c751601866dd","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"e1529567-aa61-4306-9ef1-2ba570702d1b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"e1529567-aa61-4306-9ef1-2ba570702d1b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"e1529567-aa61-4306-9ef1-2ba570702d1b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"e1529567-aa61-4306-9ef1-2ba570702d1b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/566b774c-3633-4ecf-8aa4-c751601866dd' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"566b774c-3633-4ecf-8aa4-c751601866dd","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6036994a3cbdd5218c9223dc159158c2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6036994a3cbdd5218c9223dc159158c2","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/566b774c-3633-4ecf-8aa4-c751601866dd"}}},"level":"info","message":"received a callback","requestID":"6036994a3cbdd5218c9223dc159158c2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"6036994a3cbdd5218c9223dc159158c2","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"6036994a3cbdd5218c9223dc159158c2"} device-1 | {"content":{"candidate":"candidate:3179368635 1 udp 2113937151 f9a4b9ad-98de-42d8-b920-e6e79de71844.local 33277 typ host generation 0 ufrag vgIr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a09d3f16-57bc-4591-82a7-54f4a056bde3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:782954920 1 udp 1677729535 141.24.211.56 33277 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag vgIr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a09d3f16-57bc-4591-82a7-54f4a056bde3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2424719962 1 udp 33562623 141.24.210.113 52380 typ relay raddr 141.24.211.56 rport 33277 generation 0 ufrag vgIr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a09d3f16-57bc-4591-82a7-54f4a056bde3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"a09d3f16-57bc-4591-82a7-54f4a056bde3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3'"} device-1 | {"data":{"peerconnection":"566b774c-3633-4ecf-8aa4-c751601866dd","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"e1529567-aa61-4306-9ef1-2ba570702d1b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a09d3f16-57bc-4591-82a7-54f4a056bde3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"e1529567-aa61-4306-9ef1-2ba570702d1b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"566b774c-3633-4ecf-8aa4-c751601866dd","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/566b774c-3633-4ecf-8aa4-c751601866dd' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"566b774c-3633-4ecf-8aa4-c751601866dd","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0121b7676812ebcae00b288dbf519e2b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0121b7676812ebcae00b288dbf519e2b","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/566b774c-3633-4ecf-8aa4-c751601866dd"}}},"level":"info","message":"received a callback","requestID":"0121b7676812ebcae00b288dbf519e2b"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"ede656f0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":765,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:24Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F566b774c-3633-4ecf-8aa4-c751601866dd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2d7a8831-49c3-45bb-8d8b-05e740d59778","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931124.7098467} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":765,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.909792,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/566b774c-3633-4ecf-8aa4-c751601866dd","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ede656f0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/566b774c-3633-4ecf-8aa4-c751601866dd","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ede656f0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"ede656f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/566b774c-3633-4ecf-8aa4-c751601866dd 200 12ms","method":"GET","requestID":"ede656f0-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/peerconnections/566b774c-3633-4ecf-8aa4-c751601866dd"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 34ms","method":"POST","requestID":"0121b7676812ebcae00b288dbf519e2b","responseTime":34,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.038","http_referrer":"","http_user_agent":"node-fetch","requestID":"0121b7676812ebcae00b288dbf519e2b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"edea75a0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":766,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:24Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1529567-aa61-4306-9ef1-2ba570702d1b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"371b286e-eb1c-4650-993c-2dbc896c5af9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931124.7363856} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":766,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.525688,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"edea75a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"edea75a0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"edea75a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/e1529567-aa61-4306-9ef1-2ba570702d1b/signaling 200 12ms","method":"POST","requestID":"edea75a0-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/e1529567-aa61-4306-9ef1-2ba570702d1b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"edecbf90-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":767,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:24Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa09d3f16-57bc-4591-82a7-54f4a056bde3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"88e54d88-04f1-429d-9d22-70ef3a70d1ca","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931124.7511196} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":767,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.780776,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"edecbf90-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"edecbf90-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"edecbf90-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a09d3f16-57bc-4591-82a7-54f4a056bde3/signaling 200 13ms","method":"POST","requestID":"edecbf90-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyNH0.PC5RnAaxGqaa_FjZ0gS3jZCEzNYYX-oEbtHW7wrTQso","level":"info","message":"auth send jwt","requestID":"ebc98ffb80c475d609d0032d436bd533"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ebc98ffb80c475d609d0032d436bd533","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f","requestID":"ebc98ffb80c475d609d0032d436bd533"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":768,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:24Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":768,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.209295,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ebc98ffb80c475d609d0032d436bd533","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931124,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyNH0.PC5RnAaxGqaa_FjZ0gS3jZCEzNYYX-oEbtHW7wrTQso"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ebc98ffb80c475d609d0032d436bd533","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f","requestID":"ebc98ffb80c475d609d0032d436bd533"} gateway-1 | {"time_local":"21/Sep/2024:15:05:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ebc98ffb80c475d609d0032d436bd533"} experiment-1 | {"level":"info","message":"GET /experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f 200 15ms","method":"GET","requestID":"ebc98ffb80c475d609d0032d436bd533","responseTime":15,"status":200,"url":"/experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyNH0.PC5RnAaxGqaa_FjZ0gS3jZCEzNYYX-oEbtHW7wrTQso","level":"info","message":"auth send jwt","requestID":"3978dc7c5b1f952e98afb0eaca401dbf"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3978dc7c5b1f952e98afb0eaca401dbf","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f","requestID":"3978dc7c5b1f952e98afb0eaca401dbf"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":769,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:24Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":769,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.98954,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:24Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"3978dc7c5b1f952e98afb0eaca401dbf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931124,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyNH0.PC5RnAaxGqaa_FjZ0gS3jZCEzNYYX-oEbtHW7wrTQso"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3978dc7c5b1f952e98afb0eaca401dbf","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f"},"level":"info","message":"Attempting to finish experiment","requestID":"3978dc7c5b1f952e98afb0eaca401dbf"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"edfa5420-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":770,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:24Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":770,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.320296,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:24Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/566b774c-3633-4ecf-8aa4-c751601866dd","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"edfa5420-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/566b774c-3633-4ecf-8aa4-c751601866dd","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931124,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyNH0.PC5RnAaxGqaa_FjZ0gS3jZCEzNYYX-oEbtHW7wrTQso"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"edfa5420-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/566b774c-3633-4ecf-8aa4-c751601866dd","device":"a09d3f16-57bc-4591-82a7-54f4a056bde3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"e1529567-aa61-4306-9ef1-2ba570702d1b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"e1529567-aa61-4306-9ef1-2ba570702d1b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"e1529567-aa61-4306-9ef1-2ba570702d1b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/566b774c-3633-4ecf-8aa4-c751601866dd' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/566b774c-3633-4ecf-8aa4-c751601866dd' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"566b774c-3633-4ecf-8aa4-c751601866dd","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F566b774c-3633-4ecf-8aa4-c751601866dd': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F566b774c-3633-4ecf-8aa4-c751601866dd","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"bc8185f6-f7a2-4811-a5a8-fd6eb2d32eeb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931124.861476} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f6728ca2-b60a-4887-98b7-44718c56bccd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931124.8619807} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"edfa5420-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9e249ba4e51ce6abe91ef7f04bc6fe0a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9e249ba4e51ce6abe91ef7f04bc6fe0a","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"088147dbdf1eed8cbfd3283782a393c7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/566b774c-3633-4ecf-8aa4-c751601866dd"}}},"level":"info","message":"received a callback","requestID":"9e249ba4e51ce6abe91ef7f04bc6fe0a"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"088147dbdf1eed8cbfd3283782a393c7","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/566b774c-3633-4ecf-8aa4-c751601866dd"}}},"level":"info","message":"received a callback","requestID":"088147dbdf1eed8cbfd3283782a393c7"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"edfa5420-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/566b774c-3633-4ecf-8aa4-c751601866dd 204 44ms","method":"DELETE","requestID":"edfa5420-782a-11ef-88d4-5fea3f61bb98","responseTime":44,"status":204,"url":"/peerconnections/566b774c-3633-4ecf-8aa4-c751601866dd"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f"},"level":"info","message":"Successfully finished experiment","requestID":"3978dc7c5b1f952e98afb0eaca401dbf"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ee04db70-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":771,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:24Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1529567-aa61-4306-9ef1-2ba570702d1b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"97d6040f-782b-4f50-9a0c-01570dff84d8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931124.9118414} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":771,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.40693,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ee04db70-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"ee04db70-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ee04db70-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/e1529567-aa61-4306-9ef1-2ba570702d1b/signaling 200 17ms","method":"POST","requestID":"ee04db70-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/e1529567-aa61-4306-9ef1-2ba570702d1b/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F078c3797-df48-4009-b0dc-cf2380c4fc9f': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F078c3797-df48-4009-b0dc-cf2380c4fc9f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"7200a74e-6f08-4004-9e88-b1f96a880a83","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931124.922174} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6a601c5e-1b0b-4bd1-88f6-1716beab54b2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931124.922483} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ee07e8b0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"3978dc7c5b1f952e98afb0eaca401dbf","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":772,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:24Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa09d3f16-57bc-4591-82a7-54f4a056bde3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a520d36d-a28a-4bb0-9b31-94209dc4363a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931124.9296288} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":772,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.776996,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ee07e8b0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ee07e8b0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ee07e8b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a09d3f16-57bc-4591-82a7-54f4a056bde3/signaling 200 13ms","method":"POST","requestID":"ee07e8b0-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f","requestID":"3978dc7c5b1f952e98afb0eaca401dbf"} gateway-1 | {"time_local":"21/Sep/2024:15:05:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.189","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3978dc7c5b1f952e98afb0eaca401dbf"} gateway-1 | {"time_local":"21/Sep/2024:15:05:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3663","request_time":"4.363","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"de784e7fa6490b8abc1363bc8f83fc2c"} experiment-1 | {"level":"info","message":"DELETE /experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f 204 185ms","method":"DELETE","requestID":"3978dc7c5b1f952e98afb0eaca401dbf","responseTime":185,"status":204,"url":"/experiments/078c3797-df48-4009-b0dc-cf2380c4fc9f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyNX0.sd1J2_6PryGFWEwbW102SmLouRmqFaq0pKHRU2qNihw","level":"info","message":"auth send jwt","requestID":"fef4cad2418db7a4edb529c00bb1fb24"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 139ms","method":"POST","requestID":"9e249ba4e51ce6abe91ef7f04bc6fe0a","responseTime":139,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fef4cad2418db7a4edb529c00bb1fb24","responseTime":4,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.144","http_referrer":"","http_user_agent":"node-fetch","requestID":"9e249ba4e51ce6abe91ef7f04bc6fe0a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 137ms","method":"POST","requestID":"088147dbdf1eed8cbfd3283782a393c7","responseTime":137,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.145","http_referrer":"","http_user_agent":"node-fetch","requestID":"088147dbdf1eed8cbfd3283782a393c7"} gateway-1 | {"time_local":"21/Sep/2024:15:05:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3125","request_time":"2.875","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1b34201be3f3e3019e268fc79409cb0d"} device-1 | {"level":"info","message":"postDevices called","requestID":"fef4cad2418db7a4edb529c00bb1fb24"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":773,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:25Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/e1529567-aa61-4306-9ef1-2ba570702d1b' closed"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":773,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.921287,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fef4cad2418db7a4edb529c00bb1fb24","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931125,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyNX0.sd1J2_6PryGFWEwbW102SmLouRmqFaq0pKHRU2qNihw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fef4cad2418db7a4edb529c00bb1fb24","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a09d3f16-57bc-4591-82a7-54f4a056bde3' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d301446-0a67-4804-9900-c6486d0cf95a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2ffeea9d-d99d-4247-9329-8ff8504e11a3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931125.0334563} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fef4cad2418db7a4edb529c00bb1fb24","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"78284dce-c6fa-49ae-9cab-2a91171e299d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931125.0385509} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"fef4cad2418db7a4edb529c00bb1fb24","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d301446-0a67-4804-9900-c6486d0cf95a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"f8ac5223-d88b-4997-a476-77efa07b0f3b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931125.0498116} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"588abc09-58ed-484c-9fe0-3e45aabd97da","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931125.0500011} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"fef4cad2418db7a4edb529c00bb1fb24","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d301446-0a67-4804-9900-c6486d0cf95a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d301446-0a67-4804-9900-c6486d0cf95a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:25.049787809Z"}]},"request_id":"5d3f9b0b-e548-4a27-bfa4-39ea617ce0c1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931125.0542674} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fef4cad2418db7a4edb529c00bb1fb24","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"fef4cad2418db7a4edb529c00bb1fb24"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"fef4cad2418db7a4edb529c00bb1fb24","responseTime":41,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fef4cad2418db7a4edb529c00bb1fb24"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyNX0.sd1J2_6PryGFWEwbW102SmLouRmqFaq0pKHRU2qNihw","level":"info","message":"auth send jwt","requestID":"6955ef219bfb13cef62e4dc9823315d6"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6955ef219bfb13cef62e4dc9823315d6","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6955ef219bfb13cef62e4dc9823315d6"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":774,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:25Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":774,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.711729,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"6955ef219bfb13cef62e4dc9823315d6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931125,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyNX0.sd1J2_6PryGFWEwbW102SmLouRmqFaq0pKHRU2qNihw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6955ef219bfb13cef62e4dc9823315d6","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa29b03d8-ce88-4c00-ae46-6449f741836f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"030cfc74-7c40-4d06-9dc9-871b0c79d833","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931125.0790775} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6955ef219bfb13cef62e4dc9823315d6","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6fd18ca1-2c13-41a2-ba84-bdfd7b9a813a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931125.084001} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"6955ef219bfb13cef62e4dc9823315d6","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa29b03d8-ce88-4c00-ae46-6449f741836f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"a370b32b-0830-4444-a277-a714894ee2d2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931125.0998404} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"87b98a17-4d4d-48e4-9423-d35b806bc400","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931125.0999508} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"6955ef219bfb13cef62e4dc9823315d6","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa29b03d8-ce88-4c00-ae46-6449f741836f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa29b03d8-ce88-4c00-ae46-6449f741836f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:25.099813926Z"}]},"request_id":"daf49bd3-ebdf-4129-a8d1-787b0919b7e8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931125.10419} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6955ef219bfb13cef62e4dc9823315d6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6955ef219bfb13cef62e4dc9823315d6"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"6955ef219bfb13cef62e4dc9823315d6","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6955ef219bfb13cef62e4dc9823315d6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyNX0.sd1J2_6PryGFWEwbW102SmLouRmqFaq0pKHRU2qNihw","level":"info","message":"auth send jwt","requestID":"12483635e41f1ee222d9849b189d69b4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"12483635e41f1ee222d9849b189d69b4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"12483635e41f1ee222d9849b189d69b4"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":775,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:25Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":775,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.862739,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"12483635e41f1ee222d9849b189d69b4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931125,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyNX0.sd1J2_6PryGFWEwbW102SmLouRmqFaq0pKHRU2qNihw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"12483635e41f1ee222d9849b189d69b4","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d301446-0a67-4804-9900-c6486d0cf95a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d301446-0a67-4804-9900-c6486d0cf95a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:25.049787809Z"}]},"request_id":"60a8cb2e-c008-4e40-9e35-9bb5e15f65ea","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931125.5938823} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"12483635e41f1ee222d9849b189d69b4","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"803883c3-687a-4420-ab51-e36eac7c76ad","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931125.600512} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"12483635e41f1ee222d9849b189d69b4","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d301446-0a67-4804-9900-c6486d0cf95a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d301446-0a67-4804-9900-c6486d0cf95a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:25.049787809Z"}]},"request_id":"8e6db7f6-611d-4417-9f9a-46151b0eeff3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931125.614875} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"12483635e41f1ee222d9849b189d69b4","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"12483635e41f1ee222d9849b189d69b4"} gateway-1 | {"time_local":"21/Sep/2024:15:05:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8d301446-0a67-4804-9900-c6486d0cf95a HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.042","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"12483635e41f1ee222d9849b189d69b4"} device-1 | {"level":"info","message":"PATCH /devices/8d301446-0a67-4804-9900-c6486d0cf95a 200 36ms","method":"PATCH","requestID":"12483635e41f1ee222d9849b189d69b4","responseTime":36,"status":200,"url":"/devices/8d301446-0a67-4804-9900-c6486d0cf95a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyNX0.sd1J2_6PryGFWEwbW102SmLouRmqFaq0pKHRU2qNihw","level":"info","message":"auth send jwt","requestID":"22fa0a9a6673f65d2d29c6c6ce505e2c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"22fa0a9a6673f65d2d29c6c6ce505e2c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"22fa0a9a6673f65d2d29c6c6ce505e2c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":776,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:25Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":776,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.249506,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"22fa0a9a6673f65d2d29c6c6ce505e2c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931125,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyNX0.sd1J2_6PryGFWEwbW102SmLouRmqFaq0pKHRU2qNihw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"22fa0a9a6673f65d2d29c6c6ce505e2c","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"22fa0a9a6673f65d2d29c6c6ce505e2c"} gateway-1 | {"time_local":"21/Sep/2024:15:05:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8d301446-0a67-4804-9900-c6486d0cf95a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"22fa0a9a6673f65d2d29c6c6ce505e2c"} device-1 | {"level":"info","message":"POST /devices/8d301446-0a67-4804-9900-c6486d0cf95a/websocket 200 22ms","method":"POST","requestID":"22fa0a9a6673f65d2d29c6c6ce505e2c","responseTime":22,"status":200,"url":"/devices/8d301446-0a67-4804-9900-c6486d0cf95a/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a17a9fe58ece8f557afc3facbbb0258f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a17a9fe58ece8f557afc3facbbb0258f","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a29b03d8-ce88-4c00-ae46-6449f741836f/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a17a9fe58ece8f557afc3facbbb0258f"} device-1 | {"level":"info","message":"OPTIONS /devices/a29b03d8-ce88-4c00-ae46-6449f741836f/websocket 200 1ms","method":"OPTIONS","requestID":"a17a9fe58ece8f557afc3facbbb0258f","responseTime":1,"status":200,"url":"/devices/a29b03d8-ce88-4c00-ae46-6449f741836f/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyN30.PTjqhF8J6s6264Khu4-fmrEB3tIZe6a1jMNc5ud7rWg","level":"info","message":"auth send jwt","requestID":"425defd3078347cdf0a3186283137db3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"425defd3078347cdf0a3186283137db3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"425defd3078347cdf0a3186283137db3"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":777,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":777,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.298024,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"425defd3078347cdf0a3186283137db3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931127,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyN30.PTjqhF8J6s6264Khu4-fmrEB3tIZe6a1jMNc5ud7rWg"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"425defd3078347cdf0a3186283137db3","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"425defd3078347cdf0a3186283137db3"} gateway-1 | {"time_local":"21/Sep/2024:15:05:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a29b03d8-ce88-4c00-ae46-6449f741836f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.034","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"425defd3078347cdf0a3186283137db3"} device-1 | {"level":"info","message":"POST /devices/a29b03d8-ce88-4c00-ae46-6449f741836f/websocket 200 27ms","method":"POST","requestID":"425defd3078347cdf0a3186283137db3","responseTime":27,"status":200,"url":"/devices/a29b03d8-ce88-4c00-ae46-6449f741836f/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a6581b976f3a92d61aade81c18a8275b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a6581b976f3a92d61aade81c18a8275b","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a29b03d8-ce88-4c00-ae46-6449f741836f? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a6581b976f3a92d61aade81c18a8275b"} device-1 | {"level":"info","message":"OPTIONS /devices/a29b03d8-ce88-4c00-ae46-6449f741836f? 200 1ms","method":"OPTIONS","requestID":"a6581b976f3a92d61aade81c18a8275b","responseTime":1,"status":200,"url":"/devices/a29b03d8-ce88-4c00-ae46-6449f741836f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyN30.PTjqhF8J6s6264Khu4-fmrEB3tIZe6a1jMNc5ud7rWg","level":"info","message":"auth send jwt","requestID":"25fb040f4b86c57f04c81a1b48ac9966"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"25fb040f4b86c57f04c81a1b48ac9966","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"25fb040f4b86c57f04c81a1b48ac9966"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":778,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":778,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.265519,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"25fb040f4b86c57f04c81a1b48ac9966","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931127,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyN30.PTjqhF8J6s6264Khu4-fmrEB3tIZe6a1jMNc5ud7rWg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"25fb040f4b86c57f04c81a1b48ac9966","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa29b03d8-ce88-4c00-ae46-6449f741836f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa29b03d8-ce88-4c00-ae46-6449f741836f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:25.099813926Z"}]},"request_id":"a2999a16-41ec-48d1-ab01-9e513e4b72fc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931127.1998734} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"25fb040f4b86c57f04c81a1b48ac9966","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"38e394d0-3ebe-4a16-8090-1b420850090e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931127.2108998} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"25fb040f4b86c57f04c81a1b48ac9966","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa29b03d8-ce88-4c00-ae46-6449f741836f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa29b03d8-ce88-4c00-ae46-6449f741836f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:25.099813926Z"}]},"request_id":"bf620b77-e381-4c65-85cb-379f036e82e1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931127.2192743} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"25fb040f4b86c57f04c81a1b48ac9966","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"25fb040f4b86c57f04c81a1b48ac9966"} device-1 | {"level":"info","message":"PATCH /devices/a29b03d8-ce88-4c00-ae46-6449f741836f? 200 44ms","method":"PATCH","requestID":"25fb040f4b86c57f04c81a1b48ac9966","responseTime":44,"status":200,"url":"/devices/a29b03d8-ce88-4c00-ae46-6449f741836f?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a29b03d8-ce88-4c00-ae46-6449f741836f? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.050","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"25fb040f4b86c57f04c81a1b48ac9966"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyN30.PTjqhF8J6s6264Khu4-fmrEB3tIZe6a1jMNc5ud7rWg","level":"info","message":"auth send jwt","requestID":"32a1cbcf5c7ec551b5a19853c76020f4"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"32a1cbcf5c7ec551b5a19853c76020f4","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"32a1cbcf5c7ec551b5a19853c76020f4"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":779,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":779,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.170741,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"32a1cbcf5c7ec551b5a19853c76020f4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931127,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyN30.PTjqhF8J6s6264Khu4-fmrEB3tIZe6a1jMNc5ud7rWg"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"32a1cbcf5c7ec551b5a19853c76020f4","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d301446-0a67-4804-9900-c6486d0cf95a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d301446-0a67-4804-9900-c6486d0cf95a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:25.049787809Z"}]},"request_id":"bcd005db-8b59-4157-9b24-e6c4bbe63292","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931127.2532861} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"32a1cbcf5c7ec551b5a19853c76020f4","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"32a1cbcf5c7ec551b5a19853c76020f4"} gateway-1 | {"time_local":"21/Sep/2024:15:05:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8d301446-0a67-4804-9900-c6486d0cf95a? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"32a1cbcf5c7ec551b5a19853c76020f4"} device-1 | {"level":"info","message":"GET /devices/8d301446-0a67-4804-9900-c6486d0cf95a? 200 21ms","method":"GET","requestID":"32a1cbcf5c7ec551b5a19853c76020f4","responseTime":21,"status":200,"url":"/devices/8d301446-0a67-4804-9900-c6486d0cf95a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyN30.PTjqhF8J6s6264Khu4-fmrEB3tIZe6a1jMNc5ud7rWg","level":"info","message":"auth send jwt","requestID":"5f365dbea0f96a7ec3832b078209fbf1"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5f365dbea0f96a7ec3832b078209fbf1","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5f365dbea0f96a7ec3832b078209fbf1"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":780,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":780,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.455396,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"5f365dbea0f96a7ec3832b078209fbf1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931127,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyN30.PTjqhF8J6s6264Khu4-fmrEB3tIZe6a1jMNc5ud7rWg"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"5f365dbea0f96a7ec3832b078209fbf1","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa29b03d8-ce88-4c00-ae46-6449f741836f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa29b03d8-ce88-4c00-ae46-6449f741836f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:25.099813926Z"}]},"request_id":"748e0ba6-939c-4258-8e89-d02ece9c3742","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931127.2832358} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5f365dbea0f96a7ec3832b078209fbf1","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5f365dbea0f96a7ec3832b078209fbf1"} gateway-1 | {"time_local":"21/Sep/2024:15:05:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a29b03d8-ce88-4c00-ae46-6449f741836f? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.030","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5f365dbea0f96a7ec3832b078209fbf1"} device-1 | {"level":"info","message":"GET /devices/a29b03d8-ce88-4c00-ae46-6449f741836f? 200 23ms","method":"GET","requestID":"5f365dbea0f96a7ec3832b078209fbf1","responseTime":23,"status":200,"url":"/devices/a29b03d8-ce88-4c00-ae46-6449f741836f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyN30.PTjqhF8J6s6264Khu4-fmrEB3tIZe6a1jMNc5ud7rWg","level":"info","message":"auth send jwt","requestID":"c4f5fe3382b64289ca8116573c3f0509"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c4f5fe3382b64289ca8116573c3f0509","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"c4f5fe3382b64289ca8116573c3f0509"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":781,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":781,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":2.520484,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c4f5fe3382b64289ca8116573c3f0509","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931127,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyN30.PTjqhF8J6s6264Khu4-fmrEB3tIZe6a1jMNc5ud7rWg"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c4f5fe3382b64289ca8116573c3f0509","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce456baa-488a-4096-a038-ccde27e8ac22"},"level":"info","message":"Attempting to run experiment","requestID":"c4f5fe3382b64289ca8116573c3f0509"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce456baa-488a-4096-a038-ccde27e8ac22"},"level":"info","message":"Attempting to book experiment","requestID":"c4f5fe3382b64289ca8116573c3f0509"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce456baa-488a-4096-a038-ccde27e8ac22"},"level":"info","message":"Successfully booked experiment","requestID":"c4f5fe3382b64289ca8116573c3f0509"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ef797a10-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ef79ef40-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":782,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":782,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.110264,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ef797a10-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931127,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyN30.PTjqhF8J6s6264Khu4-fmrEB3tIZe6a1jMNc5ud7rWg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ef797a10-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Received request.","req_id":783,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Sent response.","req_id":783,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.502082,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ef79ef40-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931127,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyN30.PTjqhF8J6s6264Khu4-fmrEB3tIZe6a1jMNc5ud7rWg"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"ef79ef40-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d301446-0a67-4804-9900-c6486d0cf95a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d301446-0a67-4804-9900-c6486d0cf95a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:25.049787809Z"}]},"request_id":"8a14a854-457c-4d9c-96ed-c9a54ef4b687","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931127.3596466} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"ef797a10-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa29b03d8-ce88-4c00-ae46-6449f741836f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa29b03d8-ce88-4c00-ae46-6449f741836f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:25.099813926Z"}]},"request_id":"c2e259d4-48e0-46ae-b72a-a00a535e5f89","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931127.3661544} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ef79ef40-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ef797a10-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/8d301446-0a67-4804-9900-c6486d0cf95a? 200 23ms","method":"GET","requestID":"ef797a10-782a-11ef-88d4-5fea3f61bb98","responseTime":23,"status":200,"url":"/devices/8d301446-0a67-4804-9900-c6486d0cf95a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ef79ef40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/a29b03d8-ce88-4c00-ae46-6449f741836f? 200 24ms","method":"GET","requestID":"ef79ef40-782a-11ef-88d4-5fea3f61bb98","responseTime":24,"status":200,"url":"/devices/a29b03d8-ce88-4c00-ae46-6449f741836f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce456baa-488a-4096-a038-ccde27e8ac22"},"level":"info","message":"Setting up experiment","requestID":"c4f5fe3382b64289ca8116573c3f0509"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce456baa-488a-4096-a038-ccde27e8ac22"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"c4f5fe3382b64289ca8116573c3f0509"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce456baa-488a-4096-a038-ccde27e8ac22"},"level":"info","message":"Successfully locked booking for experiment","requestID":"c4f5fe3382b64289ca8116573c3f0509"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce456baa-488a-4096-a038-ccde27e8ac22"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"c4f5fe3382b64289ca8116573c3f0509"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce456baa-488a-4096-a038-ccde27e8ac22"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"c4f5fe3382b64289ca8116573c3f0509"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce456baa-488a-4096-a038-ccde27e8ac22"},"level":"info","message":"Attempting to update booking for experiment","requestID":"c4f5fe3382b64289ca8116573c3f0509"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce456baa-488a-4096-a038-ccde27e8ac22"},"level":"info","message":"Successfully updated booking for experiment","requestID":"c4f5fe3382b64289ca8116573c3f0509"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce456baa-488a-4096-a038-ccde27e8ac22"},"level":"info","message":"Successfully set up experiment","requestID":"c4f5fe3382b64289ca8116573c3f0509"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ef838c30-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ef83da50-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce456baa-488a-4096-a038-ccde27e8ac22"},"level":"info","message":"Successfully running experiment","requestID":"c4f5fe3382b64289ca8116573c3f0509"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ef842870-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":784,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":784,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.331892,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Received request.","req_id":785,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ef838c30-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931127,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyN30.PTjqhF8J6s6264Khu4-fmrEB3tIZe6a1jMNc5ud7rWg"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"ef838c30-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Sent response.","req_id":785,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.097916,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ef83da50-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931127,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyN30.PTjqhF8J6s6264Khu4-fmrEB3tIZe6a1jMNc5ud7rWg"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"ef83da50-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58242","level":"info","msg":"Received request.","req_id":786,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d301446-0a67-4804-9900-c6486d0cf95a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1a7e15ba-34c9-44e1-aefb-b96869c6a520","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931127.4315846} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa29b03d8-ce88-4c00-ae46-6449f741836f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa29b03d8-ce88-4c00-ae46-6449f741836f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:25.099813926Z"}]},"request_id":"8f8d840f-0113-451c-a2b8-9a71040c19cb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931127.4336863} authorization-1 | {"client_addr":"127.0.0.1:58242","level":"info","msg":"Sent response.","req_id":786,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.898497,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ef842870-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 16ms","method":"POST","requestID":"ef842870-782a-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d301446-0a67-4804-9900-c6486d0cf95a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d301446-0a67-4804-9900-c6486d0cf95a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:25.049787809Z"}]},"request_id":"397f83b9-83f5-494e-9570-3c7cd785a4ee","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931127.4356153} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"ef83da50-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"ef838c30-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fce456baa-488a-4096-a038-ccde27e8ac22#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fce456baa-488a-4096-a038-ccde27e8ac22","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"69a0cc39-fdaf-4fd4-8b5b-64b2f0e596c1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931127.4433565} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ef842870-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/8d301446-0a67-4804-9900-c6486d0cf95a/signaling 200 29ms","method":"POST","requestID":"ef842870-782a-11ef-88d4-5fea3f61bb98","responseTime":29,"status":200,"url":"/devices/8d301446-0a67-4804-9900-c6486d0cf95a/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ef83da50-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/a29b03d8-ce88-4c00-ae46-6449f741836f? 200 32ms","method":"GET","requestID":"ef83da50-782a-11ef-88d4-5fea3f61bb98","responseTime":32,"status":200,"url":"/devices/a29b03d8-ce88-4c00-ae46-6449f741836f?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ae053608-2ec5-4842-922d-717fc74c78ec","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931127.443836} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ef838c30-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"c4f5fe3382b64289ca8116573c3f0509","responseTime":26,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/8d301446-0a67-4804-9900-c6486d0cf95a? 200 35ms","method":"GET","requestID":"ef838c30-782a-11ef-88d4-5fea3f61bb98","responseTime":35,"status":200,"url":"/devices/8d301446-0a67-4804-9900-c6486d0cf95a?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ef890a70-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":787,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:27Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ef89a6b0-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/ce456baa-488a-4096-a038-ccde27e8ac22","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"c4f5fe3382b64289ca8116573c3f0509"} gateway-1 | {"time_local":"21/Sep/2024:15:05:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.161","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c4f5fe3382b64289ca8116573c3f0509"} experiment-1 | {"level":"info","message":"POST /experiments? 201 154ms","method":"POST","requestID":"c4f5fe3382b64289ca8116573c3f0509","responseTime":154,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa29b03d8-ce88-4c00-ae46-6449f741836f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3f23392e-b0e9-4e86-af03-5730507747e9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931127.4529748} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":787,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.112419,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Received request.","req_id":788,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ef890a70-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"ef890a70-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d301446-0a67-4804-9900-c6486d0cf95a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c889c633-28f9-4b7b-9404-851c21ec18b8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931127.45697} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Sent response.","req_id":788,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.706354,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ef89a6b0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ef89a6b0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyN30.PTjqhF8J6s6264Khu4-fmrEB3tIZe6a1jMNc5ud7rWg","level":"info","message":"auth send jwt","requestID":"d84feced2a859e9fb82daaf83791edf8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d84feced2a859e9fb82daaf83791edf8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ef890a70-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a29b03d8-ce88-4c00-ae46-6449f741836f/signaling 200 15ms","method":"POST","requestID":"ef890a70-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/a29b03d8-ce88-4c00-ae46-6449f741836f/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d84feced2a859e9fb82daaf83791edf8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ef89a6b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/8d301446-0a67-4804-9900-c6486d0cf95a/signaling 200 14ms","method":"POST","requestID":"ef89a6b0-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/8d301446-0a67-4804-9900-c6486d0cf95a/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":789,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":789,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.553667,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:27Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ef8c17b0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d84feced2a859e9fb82daaf83791edf8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931127,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyN30.PTjqhF8J6s6264Khu4-fmrEB3tIZe6a1jMNc5ud7rWg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d84feced2a859e9fb82daaf83791edf8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":790,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa29b03d8-ce88-4c00-ae46-6449f741836f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"177cfe71-94e3-4b88-a3b1-3bcbee1f41d6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931127.4725397} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":790,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.507967,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ef8c17b0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ef8c17b0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d301446-0a67-4804-9900-c6486d0cf95a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d301446-0a67-4804-9900-c6486d0cf95a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:25.049787809Z"}]},"request_id":"14412b26-28d3-441b-8364-aff05a7804d4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931127.4747143} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d84feced2a859e9fb82daaf83791edf8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ef8c17b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a29b03d8-ce88-4c00-ae46-6449f741836f/signaling 200 11ms","method":"POST","requestID":"ef8c17b0-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/a29b03d8-ce88-4c00-ae46-6449f741836f/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d84feced2a859e9fb82daaf83791edf8"} gateway-1 | {"time_local":"21/Sep/2024:15:05:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8d301446-0a67-4804-9900-c6486d0cf95a? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d84feced2a859e9fb82daaf83791edf8"} device-1 | {"level":"info","message":"GET /devices/8d301446-0a67-4804-9900-c6486d0cf95a? 200 17ms","method":"GET","requestID":"d84feced2a859e9fb82daaf83791edf8","responseTime":17,"status":200,"url":"/devices/8d301446-0a67-4804-9900-c6486d0cf95a?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce456baa-488a-4096-a038-ccde27e8ac22"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"c4f5fe3382b64289ca8116573c3f0509"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ef8e3a90-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ef8e61a0-782a-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyN30.PTjqhF8J6s6264Khu4-fmrEB3tIZe6a1jMNc5ud7rWg","level":"info","message":"auth send jwt","requestID":"650a9289412b327c86f6a00f19e2398d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"650a9289412b327c86f6a00f19e2398d","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"650a9289412b327c86f6a00f19e2398d"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":791,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":791,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.683766,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Received request.","req_id":792,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ef8e3a90-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931127,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyN30.PTjqhF8J6s6264Khu4-fmrEB3tIZe6a1jMNc5ud7rWg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ef8e3a90-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Sent response.","req_id":792,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.706445,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58242","level":"info","msg":"Received request.","req_id":793,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ef8e61a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931127,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyN30.PTjqhF8J6s6264Khu4-fmrEB3tIZe6a1jMNc5ud7rWg"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ef8e61a0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58242","level":"info","msg":"Sent response.","req_id":793,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.915418,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"650a9289412b327c86f6a00f19e2398d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931127,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyN30.PTjqhF8J6s6264Khu4-fmrEB3tIZe6a1jMNc5ud7rWg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"650a9289412b327c86f6a00f19e2398d","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d301446-0a67-4804-9900-c6486d0cf95a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d301446-0a67-4804-9900-c6486d0cf95a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:25.049787809Z"}]},"request_id":"85f9cf2a-08f0-453c-af64-3877f1dcf04a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931127.4918585} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ef8e3a90-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa29b03d8-ce88-4c00-ae46-6449f741836f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa29b03d8-ce88-4c00-ae46-6449f741836f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:25.099813926Z"}]},"request_id":"02be9f56-2259-4053-8e6e-460f254d97b3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931127.4941413} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ef8e61a0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa29b03d8-ce88-4c00-ae46-6449f741836f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa29b03d8-ce88-4c00-ae46-6449f741836f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:25.099813926Z"}]},"request_id":"b9b4bc22-6829-49a3-8c68-6db1120cf07f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931127.4963892} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"650a9289412b327c86f6a00f19e2398d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ef8e3a90-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/8d301446-0a67-4804-9900-c6486d0cf95a? 200 17ms","method":"GET","requestID":"ef8e3a90-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/8d301446-0a67-4804-9900-c6486d0cf95a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ef8e61a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/a29b03d8-ce88-4c00-ae46-6449f741836f? 200 19ms","method":"GET","requestID":"ef8e61a0-782a-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/a29b03d8-ce88-4c00-ae46-6449f741836f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"650a9289412b327c86f6a00f19e2398d"} device-1 | {"level":"info","message":"GET /devices/a29b03d8-ce88-4c00-ae46-6449f741836f? 200 18ms","method":"GET","requestID":"650a9289412b327c86f6a00f19e2398d","responseTime":18,"status":200,"url":"/devices/a29b03d8-ce88-4c00-ae46-6449f741836f?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a29b03d8-ce88-4c00-ae46-6449f741836f? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"650a9289412b327c86f6a00f19e2398d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce456baa-488a-4096-a038-ccde27e8ac22"},"level":"info","message":"Building connection plan","requestID":"c4f5fe3382b64289ca8116573c3f0509"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"18ca2b86-15b9-4989-b4f3-f2460ea73c23"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"9ae1ce8a-be9f-48f1-a901-a8d8b0cc2bc7"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"1ac7274b-aeef-439f-80dc-e149e3c9c2f8"}]},"level":"info","message":"Built pairwise service configurations","requestID":"c4f5fe3382b64289ca8116573c3f0509"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"c4f5fe3382b64289ca8116573c3f0509"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"ef91bd00-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":794,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":794,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.906814,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ef91bd00-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931127,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyN30.PTjqhF8J6s6264Khu4-fmrEB3tIZe6a1jMNc5ud7rWg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ef91bd00-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"46ca13a3-b092-4142-855f-b090680d6eb3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931127.5164998} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4030fd5c-1bc1-45ef-97a5-c06d7603f5b1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931127.5167494} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"ef91bd00-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"ef91bd00-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"ef91bd00-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/bbc683df-ba79-4fec-9a59-8a05fa0ec80a'","requestID":"ef91bd00-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/bbc683df-ba79-4fec-9a59-8a05fa0ec80a'","requestID":"ef91bd00-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"ef91bd00-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 26ms","method":"POST","requestID":"ef91bd00-782a-11ef-88d4-5fea3f61bb98","responseTime":26,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"ef91bd00-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce456baa-488a-4096-a038-ccde27e8ac22"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"c4f5fe3382b64289ca8116573c3f0509"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ef99ac40-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":795,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d301446-0a67-4804-9900-c6486d0cf95a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9b4620b5-b332-4c7e-8303-a49cb3e0870d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931127.5610845} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":795,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.562427,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ef99ac40-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ef99ac40-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ef99ac40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/8d301446-0a67-4804-9900-c6486d0cf95a/signaling 200 9ms","method":"POST","requestID":"ef99ac40-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/8d301446-0a67-4804-9900-c6486d0cf95a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ef9b59f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"device":"a29b03d8-ce88-4c00-ae46-6449f741836f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"a29b03d8-ce88-4c00-ae46-6449f741836f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":796,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa29b03d8-ce88-4c00-ae46-6449f741836f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c2dd7747-4019-44d6-9dfc-054105807535","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931127.5720253} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":796,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.098529,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ef9b59f0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ef9b59f0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ef9b59f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a29b03d8-ce88-4c00-ae46-6449f741836f/signaling 200 10ms","method":"POST","requestID":"ef9b59f0-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/a29b03d8-ce88-4c00-ae46-6449f741836f/signaling"} device-1 | {"device":"8d301446-0a67-4804-9900-c6486d0cf95a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"bbc683df-ba79-4fec-9a59-8a05fa0ec80a","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 435227924121648762 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=msid-semantic: WMS\r\nm=application 9 DTLS/SCTP 5000\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:5uLL\r\na=ice-pwd:SgjMDwfVBPU7xQugbRG+9Guh\r\na=ice-options:trickle\r\na=fingerprint:sha-256 E3:AA:51:BD:AE:BC:E4:0A:06:0C:3B:D1:63:DF:24:5D:27:3A:D2:0D:9A:91:9E:C4:91:29:F0:B9:93:10:CC:C6\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"a29b03d8-ce88-4c00-ae46-6449f741836f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:406708603 1 udp 2113937151 17bf3e6d-38ff-40b0-ad1b-edcfda64e1f3.local 38033 typ host generation 0 ufrag 5uLL network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a29b03d8-ce88-4c00-ae46-6449f741836f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"a29b03d8-ce88-4c00-ae46-6449f741836f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:2618329860 1 udp 1677729535 141.24.211.56 38033 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 5uLL network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a29b03d8-ce88-4c00-ae46-6449f741836f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"a29b03d8-ce88-4c00-ae46-6449f741836f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f'"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bbc683df-ba79-4fec-9a59-8a05fa0ec80a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bbc683df-ba79-4fec-9a59-8a05fa0ec80a","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"afddbee0f10406a8f4c0613d4b4f1100","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"afddbee0f10406a8f4c0613d4b4f1100","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/bbc683df-ba79-4fec-9a59-8a05fa0ec80a"}}},"level":"info","message":"received a callback","requestID":"afddbee0f10406a8f4c0613d4b4f1100"} device-1 | {"device":"8d301446-0a67-4804-9900-c6486d0cf95a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"8d301446-0a67-4804-9900-c6486d0cf95a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"8d301446-0a67-4804-9900-c6486d0cf95a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 4ms","method":"POST","requestID":"afddbee0f10406a8f4c0613d4b4f1100","responseTime":4,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"afddbee0f10406a8f4c0613d4b4f1100"} device-1 | {"data":{"peerconnection":"bbc683df-ba79-4fec-9a59-8a05fa0ec80a","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8d301446-0a67-4804-9900-c6486d0cf95a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a29b03d8-ce88-4c00-ae46-6449f741836f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"8d301446-0a67-4804-9900-c6486d0cf95a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"bbc683df-ba79-4fec-9a59-8a05fa0ec80a","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a29b03d8-ce88-4c00-ae46-6449f741836f","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bbc683df-ba79-4fec-9a59-8a05fa0ec80a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bbc683df-ba79-4fec-9a59-8a05fa0ec80a","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"50de6a9c5732861bf50308f4d27f6fb2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"50de6a9c5732861bf50308f4d27f6fb2","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/bbc683df-ba79-4fec-9a59-8a05fa0ec80a"}}},"level":"info","message":"received a callback","requestID":"50de6a9c5732861bf50308f4d27f6fb2"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"f0d8bbf0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":797,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:29Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbbc683df-ba79-4fec-9a59-8a05fa0ec80a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d763f0c9-34de-4abc-9950-236e996863a3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931129.653189} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":797,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.210484,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/bbc683df-ba79-4fec-9a59-8a05fa0ec80a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f0d8bbf0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/bbc683df-ba79-4fec-9a59-8a05fa0ec80a","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f0d8bbf0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"f0d8bbf0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/bbc683df-ba79-4fec-9a59-8a05fa0ec80a 200 10ms","method":"GET","requestID":"f0d8bbf0-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/peerconnections/bbc683df-ba79-4fec-9a59-8a05fa0ec80a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 33ms","method":"POST","requestID":"50de6a9c5732861bf50308f4d27f6fb2","responseTime":33,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.036","http_referrer":"","http_user_agent":"node-fetch","requestID":"50de6a9c5732861bf50308f4d27f6fb2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f0dd01b0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":798,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:29Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa29b03d8-ce88-4c00-ae46-6449f741836f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d86ffda3-0947-465d-88dd-51e99f6d0b13","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931129.6803477} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":798,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.367225,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f0dd01b0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f0dd01b0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f0dd01b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a29b03d8-ce88-4c00-ae46-6449f741836f/signaling 200 10ms","method":"POST","requestID":"f0dd01b0-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/a29b03d8-ce88-4c00-ae46-6449f741836f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f0ded670-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":799,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:29Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d301446-0a67-4804-9900-c6486d0cf95a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2814358a-9ebd-4d37-b8d1-b904d43f4cb4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931129.6933098} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":799,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.249541,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f0ded670-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f0ded670-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f0ded670-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/8d301446-0a67-4804-9900-c6486d0cf95a/signaling 200 11ms","method":"POST","requestID":"f0ded670-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/8d301446-0a67-4804-9900-c6486d0cf95a/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyOX0.24fQ8zuAz6yZhe1uLxc9_7BPchYl4ZxvGZiS_uhBJss","level":"info","message":"auth send jwt","requestID":"c4ffbc51e6ca856f9099ed07e155981a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c4ffbc51e6ca856f9099ed07e155981a","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/ce456baa-488a-4096-a038-ccde27e8ac22","requestID":"c4ffbc51e6ca856f9099ed07e155981a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":800,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:29Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":800,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.220726,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/ce456baa-488a-4096-a038-ccde27e8ac22","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c4ffbc51e6ca856f9099ed07e155981a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/ce456baa-488a-4096-a038-ccde27e8ac22","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931129,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyOX0.24fQ8zuAz6yZhe1uLxc9_7BPchYl4ZxvGZiS_uhBJss"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c4ffbc51e6ca856f9099ed07e155981a","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/ce456baa-488a-4096-a038-ccde27e8ac22","requestID":"c4ffbc51e6ca856f9099ed07e155981a"} gateway-1 | {"time_local":"21/Sep/2024:15:05:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/ce456baa-488a-4096-a038-ccde27e8ac22 HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c4ffbc51e6ca856f9099ed07e155981a"} experiment-1 | {"level":"info","message":"GET /experiments/ce456baa-488a-4096-a038-ccde27e8ac22 200 15ms","method":"GET","requestID":"c4ffbc51e6ca856f9099ed07e155981a","responseTime":15,"status":200,"url":"/experiments/ce456baa-488a-4096-a038-ccde27e8ac22"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyOX0.24fQ8zuAz6yZhe1uLxc9_7BPchYl4ZxvGZiS_uhBJss","level":"info","message":"auth send jwt","requestID":"64b908330e09c672c75170794b2ef6c7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"64b908330e09c672c75170794b2ef6c7","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/ce456baa-488a-4096-a038-ccde27e8ac22","requestID":"64b908330e09c672c75170794b2ef6c7"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":801,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:29Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":801,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.252987,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:29Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/ce456baa-488a-4096-a038-ccde27e8ac22","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"64b908330e09c672c75170794b2ef6c7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/ce456baa-488a-4096-a038-ccde27e8ac22","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931129,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyOX0.24fQ8zuAz6yZhe1uLxc9_7BPchYl4ZxvGZiS_uhBJss"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"64b908330e09c672c75170794b2ef6c7","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce456baa-488a-4096-a038-ccde27e8ac22"},"level":"info","message":"Attempting to finish experiment","requestID":"64b908330e09c672c75170794b2ef6c7"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"f0ec43f0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":802,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:29Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":802,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.202353,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:29Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/bbc683df-ba79-4fec-9a59-8a05fa0ec80a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f0ec43f0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/bbc683df-ba79-4fec-9a59-8a05fa0ec80a","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931129,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyOX0.24fQ8zuAz6yZhe1uLxc9_7BPchYl4ZxvGZiS_uhBJss"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f0ec43f0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/bbc683df-ba79-4fec-9a59-8a05fa0ec80a","device":"a29b03d8-ce88-4c00-ae46-6449f741836f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"8d301446-0a67-4804-9900-c6486d0cf95a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"8d301446-0a67-4804-9900-c6486d0cf95a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"8d301446-0a67-4804-9900-c6486d0cf95a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bbc683df-ba79-4fec-9a59-8a05fa0ec80a' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/bbc683df-ba79-4fec-9a59-8a05fa0ec80a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bbc683df-ba79-4fec-9a59-8a05fa0ec80a","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"59f892fa63d7017432ae67feeb2ac0a9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"59f892fa63d7017432ae67feeb2ac0a9","responseTime":0,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbbc683df-ba79-4fec-9a59-8a05fa0ec80a': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbbc683df-ba79-4fec-9a59-8a05fa0ec80a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"61827010-939d-46e1-8d20-279734c8b7d4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931129.796469} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"33a13b736012dedeeea2a79ae85a8bf5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/bbc683df-ba79-4fec-9a59-8a05fa0ec80a"}}},"level":"info","message":"received a callback","requestID":"59f892fa63d7017432ae67feeb2ac0a9"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"33a13b736012dedeeea2a79ae85a8bf5","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3ceb2f4d-4b8f-44d6-8987-1883cbebd171","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931129.7968087} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/bbc683df-ba79-4fec-9a59-8a05fa0ec80a"}}},"level":"info","message":"received a callback","requestID":"33a13b736012dedeeea2a79ae85a8bf5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"f0ec43f0-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"bbc683df-ba79-4fec-9a59-8a05fa0ec80a","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"f0ec43f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/bbc683df-ba79-4fec-9a59-8a05fa0ec80a 204 43ms","method":"DELETE","requestID":"f0ec43f0-782a-11ef-88d4-5fea3f61bb98","responseTime":43,"status":204,"url":"/peerconnections/bbc683df-ba79-4fec-9a59-8a05fa0ec80a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce456baa-488a-4096-a038-ccde27e8ac22"},"level":"info","message":"Successfully finished experiment","requestID":"64b908330e09c672c75170794b2ef6c7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f0f62f00-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":803,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:29Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa29b03d8-ce88-4c00-ae46-6449f741836f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f3b47e5d-118e-4fc2-a6a1-b6802f0a9050","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931129.8479142} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":803,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.357716,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f0f62f00-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"f0f62f00-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f0f62f00-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a29b03d8-ce88-4c00-ae46-6449f741836f/signaling 200 14ms","method":"POST","requestID":"f0f62f00-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/a29b03d8-ce88-4c00-ae46-6449f741836f/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fce456baa-488a-4096-a038-ccde27e8ac22': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fce456baa-488a-4096-a038-ccde27e8ac22","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"a27630a1-409e-41b5-8772-2d9da0cd452e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931129.8542595} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"02ca8055-5e92-4ab0-b407-0dda5d7383ca","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931129.8546154} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f0f8a000-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"64b908330e09c672c75170794b2ef6c7","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":804,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:29Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d301446-0a67-4804-9900-c6486d0cf95a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f4c1388e-9bf9-4de3-9ded-e5b4d76e6348","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931129.8623755} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":804,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.422696,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f0f8a000-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f0f8a000-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f0f8a000-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/8d301446-0a67-4804-9900-c6486d0cf95a/signaling 200 11ms","method":"POST","requestID":"f0f8a000-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/8d301446-0a67-4804-9900-c6486d0cf95a/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/ce456baa-488a-4096-a038-ccde27e8ac22","requestID":"64b908330e09c672c75170794b2ef6c7"} gateway-1 | {"time_local":"21/Sep/2024:15:05:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/ce456baa-488a-4096-a038-ccde27e8ac22 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.165","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"64b908330e09c672c75170794b2ef6c7"} gateway-1 | {"time_local":"21/Sep/2024:15:05:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3269","request_time":"4.275","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"9b2354ca469213669f17600521c52c62"} experiment-1 | {"level":"info","message":"DELETE /experiments/ce456baa-488a-4096-a038-ccde27e8ac22 204 162ms","method":"DELETE","requestID":"64b908330e09c672c75170794b2ef6c7","responseTime":162,"status":204,"url":"/experiments/ce456baa-488a-4096-a038-ccde27e8ac22"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 129ms","method":"POST","requestID":"59f892fa63d7017432ae67feeb2ac0a9","responseTime":129,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.132","http_referrer":"","http_user_agent":"node-fetch","requestID":"59f892fa63d7017432ae67feeb2ac0a9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 129ms","method":"POST","requestID":"33a13b736012dedeeea2a79ae85a8bf5","responseTime":129,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"33a13b736012dedeeea2a79ae85a8bf5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyOX0.24fQ8zuAz6yZhe1uLxc9_7BPchYl4ZxvGZiS_uhBJss","level":"info","message":"auth send jwt","requestID":"9b90da4ac8691b0b0a024d9f48b65940"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9b90da4ac8691b0b0a024d9f48b65940","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9b90da4ac8691b0b0a024d9f48b65940"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":805,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:29Z"} gateway-1 | {"time_local":"21/Sep/2024:15:05:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3130","request_time":"2.795","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"bd935b297ac97b60b942b0b20734f800"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":805,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.96426,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"9b90da4ac8691b0b0a024d9f48b65940","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931129,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyOX0.24fQ8zuAz6yZhe1uLxc9_7BPchYl4ZxvGZiS_uhBJss"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9b90da4ac8691b0b0a024d9f48b65940","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/8d301446-0a67-4804-9900-c6486d0cf95a' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c920b27-2c05-49be-b59a-1a9a768a600f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2c245002-cd66-4126-a8cc-92ae903c82e2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931129.9499686} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9b90da4ac8691b0b0a024d9f48b65940","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a29b03d8-ce88-4c00-ae46-6449f741836f' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"338012c3-ef89-4fd3-9f83-6e0439d6be80","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931129.9552727} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"9b90da4ac8691b0b0a024d9f48b65940","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c920b27-2c05-49be-b59a-1a9a768a600f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"1bb81329-8e02-43d9-b6ac-fd2f118d5f25","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931129.965933} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"28a54507-647a-4418-9c99-f6f026dc8729","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931129.9659982} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"9b90da4ac8691b0b0a024d9f48b65940","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c920b27-2c05-49be-b59a-1a9a768a600f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c920b27-2c05-49be-b59a-1a9a768a600f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:29.965898986Z"}]},"request_id":"691d6f62-6dec-4786-b6c2-d0a4b795724d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931129.9708624} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9b90da4ac8691b0b0a024d9f48b65940","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9b90da4ac8691b0b0a024d9f48b65940"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"9b90da4ac8691b0b0a024d9f48b65940","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9b90da4ac8691b0b0a024d9f48b65940"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyOX0.24fQ8zuAz6yZhe1uLxc9_7BPchYl4ZxvGZiS_uhBJss","level":"info","message":"auth send jwt","requestID":"07de9621466893fa6e38ac1951c9963c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"07de9621466893fa6e38ac1951c9963c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"07de9621466893fa6e38ac1951c9963c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":806,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:29Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":806,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.869426,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"07de9621466893fa6e38ac1951c9963c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931129,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEyOX0.24fQ8zuAz6yZhe1uLxc9_7BPchYl4ZxvGZiS_uhBJss"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"07de9621466893fa6e38ac1951c9963c","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28ec9a39-ae7b-4462-bf82-2a11df52c7e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a9e34ace-255b-4657-968f-c39ce148ebff","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.0016181} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"07de9621466893fa6e38ac1951c9963c","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1d80d720-db01-4fc9-b620-915d8b761732","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.0064666} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"07de9621466893fa6e38ac1951c9963c","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28ec9a39-ae7b-4462-bf82-2a11df52c7e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"f02c56c5-ae79-40a6-b335-2adf27416460","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.0174015} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ec46d86c-d294-40f5-9a88-804e0687fdf5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.01756} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"07de9621466893fa6e38ac1951c9963c","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28ec9a39-ae7b-4462-bf82-2a11df52c7e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28ec9a39-ae7b-4462-bf82-2a11df52c7e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:30.017377310Z"}]},"request_id":"f1fb39e3-eb09-4366-8061-cb74a5c2c161","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.022328} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"07de9621466893fa6e38ac1951c9963c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"07de9621466893fa6e38ac1951c9963c"} gateway-1 | {"time_local":"21/Sep/2024:15:05:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"07de9621466893fa6e38ac1951c9963c"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"07de9621466893fa6e38ac1951c9963c","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzMH0.fGD9eMC3GUL6VQS_45e7ZMLePKQ-cjF0RDpH-iHBC5U","level":"info","message":"auth send jwt","requestID":"62875690e62509b4eb4513028fcb0036"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"62875690e62509b4eb4513028fcb0036","responseTime":3,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzMH0.fGD9eMC3GUL6VQS_45e7ZMLePKQ-cjF0RDpH-iHBC5U","level":"info","message":"auth send jwt","requestID":"f4d6bc819ef92dac2421d3faf55d8efa"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f4d6bc819ef92dac2421d3faf55d8efa","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"62875690e62509b4eb4513028fcb0036"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f4d6bc819ef92dac2421d3faf55d8efa"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":807,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":807,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.707389,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Received request.","req_id":808,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"62875690e62509b4eb4513028fcb0036","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931130,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzMH0.fGD9eMC3GUL6VQS_45e7ZMLePKQ-cjF0RDpH-iHBC5U"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"62875690e62509b4eb4513028fcb0036","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Sent response.","req_id":808,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.582024,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f4d6bc819ef92dac2421d3faf55d8efa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931130,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzMH0.fGD9eMC3GUL6VQS_45e7ZMLePKQ-cjF0RDpH-iHBC5U"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f4d6bc819ef92dac2421d3faf55d8efa","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c920b27-2c05-49be-b59a-1a9a768a600f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c920b27-2c05-49be-b59a-1a9a768a600f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:29.965898986Z"}]},"request_id":"85cf4f27-79a0-47a6-9fe2-278568de7274","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.5001013} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"62875690e62509b4eb4513028fcb0036","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28ec9a39-ae7b-4462-bf82-2a11df52c7e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28ec9a39-ae7b-4462-bf82-2a11df52c7e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:30.017377310Z"}]},"request_id":"5ceebc2a-5b29-4d56-ae9f-7c4ea16009d6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.5009754} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f4d6bc819ef92dac2421d3faf55d8efa","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"61e8256a-620e-437d-8d9f-9cdd1009216e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.505001} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"62875690e62509b4eb4513028fcb0036","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1188ece9-f9ac-4dc0-9fee-8a486964b02e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.506298} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f4d6bc819ef92dac2421d3faf55d8efa","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28ec9a39-ae7b-4462-bf82-2a11df52c7e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28ec9a39-ae7b-4462-bf82-2a11df52c7e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:30.017377310Z"}]},"request_id":"65c033ea-498e-4f45-995d-ed8f89e4d291","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.5102522} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f4d6bc819ef92dac2421d3faf55d8efa","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f4d6bc819ef92dac2421d3faf55d8efa"} device-1 | {"level":"info","message":"PATCH /devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3 200 24ms","method":"PATCH","requestID":"f4d6bc819ef92dac2421d3faf55d8efa","responseTime":24,"status":200,"url":"/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3"} gateway-1 | {"time_local":"21/Sep/2024:15:05:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.031","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f4d6bc819ef92dac2421d3faf55d8efa"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzMH0.fGD9eMC3GUL6VQS_45e7ZMLePKQ-cjF0RDpH-iHBC5U","level":"info","message":"auth send jwt","requestID":"d26515067e198c0366e4ec63f96e1867"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d26515067e198c0366e4ec63f96e1867","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d26515067e198c0366e4ec63f96e1867"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c920b27-2c05-49be-b59a-1a9a768a600f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c920b27-2c05-49be-b59a-1a9a768a600f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:29.965898986Z"}]},"request_id":"b0366346-18b3-4b4b-88ad-b2ebb07cf2ba","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.5201068} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"62875690e62509b4eb4513028fcb0036","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":809,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":809,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.71414,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:30Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"62875690e62509b4eb4513028fcb0036"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d26515067e198c0366e4ec63f96e1867","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931130,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzMH0.fGD9eMC3GUL6VQS_45e7ZMLePKQ-cjF0RDpH-iHBC5U"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d26515067e198c0366e4ec63f96e1867","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"PATCH /devices/9c920b27-2c05-49be-b59a-1a9a768a600f 200 35ms","method":"PATCH","requestID":"62875690e62509b4eb4513028fcb0036","responseTime":35,"status":200,"url":"/devices/9c920b27-2c05-49be-b59a-1a9a768a600f"} gateway-1 | {"time_local":"21/Sep/2024:15:05:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9c920b27-2c05-49be-b59a-1a9a768a600f HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"62875690e62509b4eb4513028fcb0036"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzMH0.fGD9eMC3GUL6VQS_45e7ZMLePKQ-cjF0RDpH-iHBC5U","level":"info","message":"auth send jwt","requestID":"87834b4f4d1e55522b61aa0adb82b546"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"87834b4f4d1e55522b61aa0adb82b546","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"87834b4f4d1e55522b61aa0adb82b546"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":810,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":810,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.898204,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"87834b4f4d1e55522b61aa0adb82b546","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931130,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzMH0.fGD9eMC3GUL6VQS_45e7ZMLePKQ-cjF0RDpH-iHBC5U"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"87834b4f4d1e55522b61aa0adb82b546","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d26515067e198c0366e4ec63f96e1867"} gateway-1 | {"time_local":"21/Sep/2024:15:05:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"d26515067e198c0366e4ec63f96e1867"} device-1 | {"level":"info","message":"POST /devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3/websocket 200 18ms","method":"POST","requestID":"d26515067e198c0366e4ec63f96e1867","responseTime":18,"status":200,"url":"/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"87834b4f4d1e55522b61aa0adb82b546"} device-1 | {"level":"info","message":"POST /devices/9c920b27-2c05-49be-b59a-1a9a768a600f/websocket 200 21ms","method":"POST","requestID":"87834b4f4d1e55522b61aa0adb82b546","responseTime":21,"status":200,"url":"/devices/9c920b27-2c05-49be-b59a-1a9a768a600f/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:05:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9c920b27-2c05-49be-b59a-1a9a768a600f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"87834b4f4d1e55522b61aa0adb82b546"} device-1 | {"level":"info","message":"device 'http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzMH0.fGD9eMC3GUL6VQS_45e7ZMLePKQ-cjF0RDpH-iHBC5U","level":"info","message":"auth send jwt","requestID":"70391067cd2749ddf6250184f979b272"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"70391067cd2749ddf6250184f979b272","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"70391067cd2749ddf6250184f979b272"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":811,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":811,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.655095,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"70391067cd2749ddf6250184f979b272","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931130,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzMH0.fGD9eMC3GUL6VQS_45e7ZMLePKQ-cjF0RDpH-iHBC5U"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"70391067cd2749ddf6250184f979b272","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c920b27-2c05-49be-b59a-1a9a768a600f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c920b27-2c05-49be-b59a-1a9a768a600f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:29.965898986Z"}]},"request_id":"98056d34-60a0-4cfc-8891-cefe72e7a480","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.5842767} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"70391067cd2749ddf6250184f979b272","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"70391067cd2749ddf6250184f979b272"} device-1 | {"level":"info","message":"GET /devices/9c920b27-2c05-49be-b59a-1a9a768a600f? 200 12ms","method":"GET","requestID":"70391067cd2749ddf6250184f979b272","responseTime":12,"status":200,"url":"/devices/9c920b27-2c05-49be-b59a-1a9a768a600f?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9c920b27-2c05-49be-b59a-1a9a768a600f? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"70391067cd2749ddf6250184f979b272"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzMH0.fGD9eMC3GUL6VQS_45e7ZMLePKQ-cjF0RDpH-iHBC5U","level":"info","message":"auth send jwt","requestID":"d4548a4677b49033f44bca8806f8ea88"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d4548a4677b49033f44bca8806f8ea88","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d4548a4677b49033f44bca8806f8ea88"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":812,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":812,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.794556,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d4548a4677b49033f44bca8806f8ea88","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931130,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzMH0.fGD9eMC3GUL6VQS_45e7ZMLePKQ-cjF0RDpH-iHBC5U"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d4548a4677b49033f44bca8806f8ea88","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28ec9a39-ae7b-4462-bf82-2a11df52c7e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28ec9a39-ae7b-4462-bf82-2a11df52c7e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:30.017377310Z"}]},"request_id":"45b8520c-90d7-41ba-a70e-1caa53e6485f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.6015167} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d4548a4677b49033f44bca8806f8ea88","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d4548a4677b49033f44bca8806f8ea88"} gateway-1 | {"time_local":"21/Sep/2024:15:05:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d4548a4677b49033f44bca8806f8ea88"} device-1 | {"level":"info","message":"GET /devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3? 200 12ms","method":"GET","requestID":"d4548a4677b49033f44bca8806f8ea88","responseTime":12,"status":200,"url":"/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzMH0.fGD9eMC3GUL6VQS_45e7ZMLePKQ-cjF0RDpH-iHBC5U","level":"info","message":"auth send jwt","requestID":"5587c30ae477e609dba4e379f5817559"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5587c30ae477e609dba4e379f5817559","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"5587c30ae477e609dba4e379f5817559"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":813,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":813,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.285108,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"5587c30ae477e609dba4e379f5817559","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931130,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzMH0.fGD9eMC3GUL6VQS_45e7ZMLePKQ-cjF0RDpH-iHBC5U"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5587c30ae477e609dba4e379f5817559","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b9f8632-d395-4313-a831-f64f6ae6b846"},"level":"info","message":"Attempting to run experiment","requestID":"5587c30ae477e609dba4e379f5817559"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b9f8632-d395-4313-a831-f64f6ae6b846"},"level":"info","message":"Attempting to book experiment","requestID":"5587c30ae477e609dba4e379f5817559"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b9f8632-d395-4313-a831-f64f6ae6b846"},"level":"info","message":"Successfully booked experiment","requestID":"5587c30ae477e609dba4e379f5817559"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f171eeb0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f1723cd0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":814,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":814,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.631593,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Received request.","req_id":815,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f171eeb0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931130,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzMH0.fGD9eMC3GUL6VQS_45e7ZMLePKQ-cjF0RDpH-iHBC5U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f171eeb0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Sent response.","req_id":815,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.879588,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f1723cd0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931130,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzMH0.fGD9eMC3GUL6VQS_45e7ZMLePKQ-cjF0RDpH-iHBC5U"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f1723cd0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c920b27-2c05-49be-b59a-1a9a768a600f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c920b27-2c05-49be-b59a-1a9a768a600f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:29.965898986Z"}]},"request_id":"084f91b5-3121-490c-b3ba-35747e970fa9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.6621048} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f171eeb0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28ec9a39-ae7b-4462-bf82-2a11df52c7e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28ec9a39-ae7b-4462-bf82-2a11df52c7e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:30.017377310Z"}]},"request_id":"b1548fcd-b248-404b-8012-b8f5274dfeeb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.6629949} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f1723cd0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f171eeb0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/9c920b27-2c05-49be-b59a-1a9a768a600f? 200 20ms","method":"GET","requestID":"f171eeb0-782a-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/9c920b27-2c05-49be-b59a-1a9a768a600f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f1723cd0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3? 200 18ms","method":"GET","requestID":"f1723cd0-782a-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b9f8632-d395-4313-a831-f64f6ae6b846"},"level":"info","message":"Setting up experiment","requestID":"5587c30ae477e609dba4e379f5817559"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b9f8632-d395-4313-a831-f64f6ae6b846"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"5587c30ae477e609dba4e379f5817559"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b9f8632-d395-4313-a831-f64f6ae6b846"},"level":"info","message":"Successfully locked booking for experiment","requestID":"5587c30ae477e609dba4e379f5817559"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b9f8632-d395-4313-a831-f64f6ae6b846"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"5587c30ae477e609dba4e379f5817559"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b9f8632-d395-4313-a831-f64f6ae6b846"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"5587c30ae477e609dba4e379f5817559"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b9f8632-d395-4313-a831-f64f6ae6b846"},"level":"info","message":"Attempting to update booking for experiment","requestID":"5587c30ae477e609dba4e379f5817559"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b9f8632-d395-4313-a831-f64f6ae6b846"},"level":"info","message":"Successfully updated booking for experiment","requestID":"5587c30ae477e609dba4e379f5817559"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b9f8632-d395-4313-a831-f64f6ae6b846"},"level":"info","message":"Successfully set up experiment","requestID":"5587c30ae477e609dba4e379f5817559"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f17c4ef0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f17c9d10-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f17d1240-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b9f8632-d395-4313-a831-f64f6ae6b846"},"level":"info","message":"Successfully running experiment","requestID":"5587c30ae477e609dba4e379f5817559"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":816,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":816,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.055974,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Received request.","req_id":817,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Sent response.","req_id":817,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.96912,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58242","level":"info","msg":"Received request.","req_id":818,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f17c4ef0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931130,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzMH0.fGD9eMC3GUL6VQS_45e7ZMLePKQ-cjF0RDpH-iHBC5U"} authorization-1 | {"level":"info","message":"POST /authorize 200 16ms","method":"POST","requestID":"f17c4ef0-782a-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f17c9d10-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931130,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzMH0.fGD9eMC3GUL6VQS_45e7ZMLePKQ-cjF0RDpH-iHBC5U"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"f17c9d10-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c920b27-2c05-49be-b59a-1a9a768a600f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"72ceebdd-8a38-427c-bc96-ec450398d172","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.7356086} authorization-1 | {"client_addr":"127.0.0.1:58242","level":"info","msg":"Sent response.","req_id":818,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.811323,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f17d1240-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"f17d1240-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f17d1240-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/9c920b27-2c05-49be-b59a-1a9a768a600f/signaling 200 24ms","method":"POST","requestID":"f17d1240-782a-11ef-88d4-5fea3f61bb98","responseTime":24,"status":200,"url":"/devices/9c920b27-2c05-49be-b59a-1a9a768a600f/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c920b27-2c05-49be-b59a-1a9a768a600f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c920b27-2c05-49be-b59a-1a9a768a600f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:29.965898986Z"}]},"request_id":"16fa6fc7-7398-43a6-8a9e-8137a4c7a4df","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.7476692} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"f17c4ef0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f18130f0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28ec9a39-ae7b-4462-bf82-2a11df52c7e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28ec9a39-ae7b-4462-bf82-2a11df52c7e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:30.017377310Z"}]},"request_id":"1ee99a0d-16a1-47cc-97da-75f6e4e5694b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.7502449} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f17c4ef0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/query 200 10ms","method":"POST","requestID":"f17c9d10-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/9c920b27-2c05-49be-b59a-1a9a768a600f? 200 39ms","method":"GET","requestID":"f17c4ef0-782a-11ef-88d4-5fea3f61bb98","responseTime":39,"status":200,"url":"/devices/9c920b27-2c05-49be-b59a-1a9a768a600f?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7b9f8632-d395-4313-a831-f64f6ae6b846#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7b9f8632-d395-4313-a831-f64f6ae6b846","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"564ef69b-d2af-4745-aff3-bcf131c48cc2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.7562222} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"93d9ddbe-b4be-4898-8c55-5e50a38a1446","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.7563932} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f17c9d10-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3? 200 41ms","method":"GET","requestID":"f17c9d10-782a-11ef-88d4-5fea3f61bb98","responseTime":41,"status":200,"url":"/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 31ms","method":"POST","requestID":"5587c30ae477e609dba4e379f5817559","responseTime":31,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28ec9a39-ae7b-4462-bf82-2a11df52c7e3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"387cb8d8-a24a-4b90-8945-c6ad33709dfa","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.763441} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":819,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":819,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.968363,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f18130f0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f18353d0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"f18130f0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":820,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:30Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f18130f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3/signaling 200 21ms","method":"POST","requestID":"f18130f0-782a-11ef-88d4-5fea3f61bb98","responseTime":21,"status":200,"url":"/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c920b27-2c05-49be-b59a-1a9a768a600f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b0a5bee0-6d18-4ff1-b49c-0963a274f6b7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.7727659} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":820,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.663193,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:30Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/7b9f8632-d395-4313-a831-f64f6ae6b846","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"5587c30ae477e609dba4e379f5817559"} gateway-1 | {"time_local":"21/Sep/2024:15:05:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1296","request_time":"0.167","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5587c30ae477e609dba4e379f5817559"} experiment-1 | {"level":"info","message":"POST /experiments? 201 164ms","method":"POST","requestID":"5587c30ae477e609dba4e379f5817559","responseTime":164,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f18353d0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f18353d0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f18353d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/9c920b27-2c05-49be-b59a-1a9a768a600f/signaling 200 13ms","method":"POST","requestID":"f18353d0-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/9c920b27-2c05-49be-b59a-1a9a768a600f/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzMH0.fGD9eMC3GUL6VQS_45e7ZMLePKQ-cjF0RDpH-iHBC5U","level":"info","message":"auth send jwt","requestID":"293cdcbe02ced0b16f29e6c61d53cc7a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"293cdcbe02ced0b16f29e6c61d53cc7a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f1859dc0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"293cdcbe02ced0b16f29e6c61d53cc7a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":821,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Received request.","req_id":822,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28ec9a39-ae7b-4462-bf82-2a11df52c7e3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1228bdf0-989d-4036-b3f7-09cf8d3aaffe","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.7858431} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Sent response.","req_id":822,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.147474,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":821,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.156644,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"293cdcbe02ced0b16f29e6c61d53cc7a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931130,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzMH0.fGD9eMC3GUL6VQS_45e7ZMLePKQ-cjF0RDpH-iHBC5U"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"293cdcbe02ced0b16f29e6c61d53cc7a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f1859dc0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f1859dc0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c920b27-2c05-49be-b59a-1a9a768a600f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c920b27-2c05-49be-b59a-1a9a768a600f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:29.965898986Z"}]},"request_id":"5e4c5309-fb4a-4f8d-a66c-b1e8db3de7eb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.7917094} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"293cdcbe02ced0b16f29e6c61d53cc7a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f1859dc0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3/signaling 200 13ms","method":"POST","requestID":"f1859dc0-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b9f8632-d395-4313-a831-f64f6ae6b846"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"5587c30ae477e609dba4e379f5817559"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f1880ec0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f18835d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"293cdcbe02ced0b16f29e6c61d53cc7a"} gateway-1 | {"time_local":"21/Sep/2024:15:05:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9c920b27-2c05-49be-b59a-1a9a768a600f? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"293cdcbe02ced0b16f29e6c61d53cc7a"} device-1 | {"level":"info","message":"GET /devices/9c920b27-2c05-49be-b59a-1a9a768a600f? 200 17ms","method":"GET","requestID":"293cdcbe02ced0b16f29e6c61d53cc7a","responseTime":17,"status":200,"url":"/devices/9c920b27-2c05-49be-b59a-1a9a768a600f?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":823,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":823,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.879155,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f1880ec0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931130,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzMH0.fGD9eMC3GUL6VQS_45e7ZMLePKQ-cjF0RDpH-iHBC5U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f1880ec0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Received request.","req_id":824,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Sent response.","req_id":824,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.669457,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f18835d0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931130,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzMH0.fGD9eMC3GUL6VQS_45e7ZMLePKQ-cjF0RDpH-iHBC5U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f18835d0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzMH0.fGD9eMC3GUL6VQS_45e7ZMLePKQ-cjF0RDpH-iHBC5U","level":"info","message":"auth send jwt","requestID":"d4ec336bbe441c85eddfe6dc8f9b8457"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d4ec336bbe441c85eddfe6dc8f9b8457","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d4ec336bbe441c85eddfe6dc8f9b8457"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c920b27-2c05-49be-b59a-1a9a768a600f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c920b27-2c05-49be-b59a-1a9a768a600f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:29.965898986Z"}]},"request_id":"7a3d15fd-c6ae-4ef7-baf5-210f41768798","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.806963} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f1880ec0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28ec9a39-ae7b-4462-bf82-2a11df52c7e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28ec9a39-ae7b-4462-bf82-2a11df52c7e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:30.017377310Z"}]},"request_id":"8f5a3ea5-c883-4f58-b82e-aa8dfd7671aa","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.8081381} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f1880ec0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f18835d0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":825,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:30Z"} device-1 | {"level":"info","message":"GET /devices/9c920b27-2c05-49be-b59a-1a9a768a600f? 200 15ms","method":"GET","requestID":"f1880ec0-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/9c920b27-2c05-49be-b59a-1a9a768a600f?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":825,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.802825,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d4ec336bbe441c85eddfe6dc8f9b8457","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931130,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzMH0.fGD9eMC3GUL6VQS_45e7ZMLePKQ-cjF0RDpH-iHBC5U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d4ec336bbe441c85eddfe6dc8f9b8457","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f18835d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3? 200 18ms","method":"GET","requestID":"f18835d0-782a-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b9f8632-d395-4313-a831-f64f6ae6b846"},"level":"info","message":"Building connection plan","requestID":"5587c30ae477e609dba4e379f5817559"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"121fd251-56c8-48dd-af7f-96b87b25869c"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"b876e72e-f32d-4232-b972-17280870aaa0"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"1a41765b-0935-4b91-8f61-6778dbeef11f"}]},"level":"info","message":"Built pairwise service configurations","requestID":"5587c30ae477e609dba4e379f5817559"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"5587c30ae477e609dba4e379f5817559"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28ec9a39-ae7b-4462-bf82-2a11df52c7e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28ec9a39-ae7b-4462-bf82-2a11df52c7e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:30.017377310Z"}]},"request_id":"15c28a97-a389-4167-9420-532e07a1b62e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.817101} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d4ec336bbe441c85eddfe6dc8f9b8457","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"f18b6a20-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":826,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:30Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d4ec336bbe441c85eddfe6dc8f9b8457"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":826,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.835385,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:30Z"} gateway-1 | {"time_local":"21/Sep/2024:15:05:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d4ec336bbe441c85eddfe6dc8f9b8457"} device-1 | {"level":"info","message":"GET /devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3? 200 15ms","method":"GET","requestID":"d4ec336bbe441c85eddfe6dc8f9b8457","responseTime":15,"status":200,"url":"/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3?"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f18b6a20-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931130,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzMH0.fGD9eMC3GUL6VQS_45e7ZMLePKQ-cjF0RDpH-iHBC5U"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f18b6a20-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"e6324098-ea77-47b8-bc64-e1772228676a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.8298252} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"af4fd767-8df9-4603-829a-dc9dab0aa1db","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.830059} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"f18b6a20-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"f18b6a20-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"f18b6a20-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/bd62f3ef-6fde-48a8-8d7d-567baeec9646'","requestID":"f18b6a20-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/bd62f3ef-6fde-48a8-8d7d-567baeec9646'","requestID":"f18b6a20-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"f18b6a20-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"f18b6a20-782a-11ef-88d4-5fea3f61bb98","responseTime":25,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"f18b6a20-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b9f8632-d395-4313-a831-f64f6ae6b846"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"5587c30ae477e609dba4e379f5817559"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f1930b40-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":827,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c920b27-2c05-49be-b59a-1a9a768a600f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e8fe57cc-ca32-45eb-8758-f224842e734c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.8746445} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":827,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.524982,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f1930b40-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f1930b40-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f1930b40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/9c920b27-2c05-49be-b59a-1a9a768a600f/signaling 200 11ms","method":"POST","requestID":"f1930b40-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/9c920b27-2c05-49be-b59a-1a9a768a600f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f194e000-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":828,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28ec9a39-ae7b-4462-bf82-2a11df52c7e3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d8666b1e-ca42-4083-acfe-95e716a19759","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931130.8854446} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":828,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.861302,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f194e000-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f194e000-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f194e000-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3/signaling 200 10ms","method":"POST","requestID":"f194e000-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3/signaling"} device-1 | {"device":"28ec9a39-ae7b-4462-bf82-2a11df52c7e3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"bd62f3ef-6fde-48a8-8d7d-567baeec9646","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9c920b27-2c05-49be-b59a-1a9a768a600f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"bd62f3ef-6fde-48a8-8d7d-567baeec9646","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9c920b27-2c05-49be-b59a-1a9a768a600f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"9c920b27-2c05-49be-b59a-1a9a768a600f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"9c920b27-2c05-49be-b59a-1a9a768a600f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"9c920b27-2c05-49be-b59a-1a9a768a600f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bd62f3ef-6fde-48a8-8d7d-567baeec9646' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bd62f3ef-6fde-48a8-8d7d-567baeec9646","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"51fba228010fea7ab3acd4d647847dde","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"51fba228010fea7ab3acd4d647847dde","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/bd62f3ef-6fde-48a8-8d7d-567baeec9646"}}},"level":"info","message":"received a callback","requestID":"51fba228010fea7ab3acd4d647847dde"} device-1 | {"device":"28ec9a39-ae7b-4462-bf82-2a11df52c7e3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"28ec9a39-ae7b-4462-bf82-2a11df52c7e3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"28ec9a39-ae7b-4462-bf82-2a11df52c7e3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"51fba228010fea7ab3acd4d647847dde","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch","requestID":"51fba228010fea7ab3acd4d647847dde"} device-1 | {"data":{"peerconnection":"bd62f3ef-6fde-48a8-8d7d-567baeec9646","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9c920b27-2c05-49be-b59a-1a9a768a600f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"28ec9a39-ae7b-4462-bf82-2a11df52c7e3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"9c920b27-2c05-49be-b59a-1a9a768a600f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"28ec9a39-ae7b-4462-bf82-2a11df52c7e3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"bd62f3ef-6fde-48a8-8d7d-567baeec9646","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bd62f3ef-6fde-48a8-8d7d-567baeec9646' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bd62f3ef-6fde-48a8-8d7d-567baeec9646","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e28aa9847208cc17e614cc1d2a9002ba","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e28aa9847208cc17e614cc1d2a9002ba","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/bd62f3ef-6fde-48a8-8d7d-567baeec9646"}}},"level":"info","message":"received a callback","requestID":"e28aa9847208cc17e614cc1d2a9002ba"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"f2d17eb0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":829,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:32Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbd62f3ef-6fde-48a8-8d7d-567baeec9646","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c0d98edf-1838-4139-8490-589f09acae2e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931132.9633498} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":829,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.341837,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/bd62f3ef-6fde-48a8-8d7d-567baeec9646","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f2d17eb0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/bd62f3ef-6fde-48a8-8d7d-567baeec9646","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"f2d17eb0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"f2d17eb0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/bd62f3ef-6fde-48a8-8d7d-567baeec9646 200 14ms","method":"GET","requestID":"f2d17eb0-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/peerconnections/bd62f3ef-6fde-48a8-8d7d-567baeec9646"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 49ms","method":"POST","requestID":"e28aa9847208cc17e614cc1d2a9002ba","responseTime":49,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch","requestID":"e28aa9847208cc17e614cc1d2a9002ba"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f2d7e750-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":830,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c920b27-2c05-49be-b59a-1a9a768a600f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9c4d34b0-fc5e-43a1-86da-6a4d1dfb284f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.0048854} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":830,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.862395,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f2d7e750-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"f2d7e750-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f2d7e750-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/9c920b27-2c05-49be-b59a-1a9a768a600f/signaling 200 15ms","method":"POST","requestID":"f2d7e750-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/9c920b27-2c05-49be-b59a-1a9a768a600f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f2daa670-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":831,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28ec9a39-ae7b-4462-bf82-2a11df52c7e3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2f4f8766-578a-40fd-bd2a-69084714e1b1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.0238285} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":831,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.875554,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f2daa670-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"f2daa670-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f2daa670-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3/signaling 200 16ms","method":"POST","requestID":"f2daa670-782a-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0","level":"info","message":"auth send jwt","requestID":"07bd45f812fb0a157ea366b112ade625"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"07bd45f812fb0a157ea366b112ade625","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/7b9f8632-d395-4313-a831-f64f6ae6b846","requestID":"07bd45f812fb0a157ea366b112ade625"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":832,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":832,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.153479,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7b9f8632-d395-4313-a831-f64f6ae6b846","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"07bd45f812fb0a157ea366b112ade625","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/7b9f8632-d395-4313-a831-f64f6ae6b846","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931133,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"07bd45f812fb0a157ea366b112ade625","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/7b9f8632-d395-4313-a831-f64f6ae6b846","requestID":"07bd45f812fb0a157ea366b112ade625"} gateway-1 | {"time_local":"21/Sep/2024:15:05:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/7b9f8632-d395-4313-a831-f64f6ae6b846 HTTP/1.1","status": "200","body_bytes_sent":"1369","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"07bd45f812fb0a157ea366b112ade625"} experiment-1 | {"level":"info","message":"GET /experiments/7b9f8632-d395-4313-a831-f64f6ae6b846 200 15ms","method":"GET","requestID":"07bd45f812fb0a157ea366b112ade625","responseTime":15,"status":200,"url":"/experiments/7b9f8632-d395-4313-a831-f64f6ae6b846"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0","level":"info","message":"auth send jwt","requestID":"44d493b31f88fda82903a4a6cca276c5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"44d493b31f88fda82903a4a6cca276c5","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/7b9f8632-d395-4313-a831-f64f6ae6b846","requestID":"44d493b31f88fda82903a4a6cca276c5"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":833,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":833,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.293584,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7b9f8632-d395-4313-a831-f64f6ae6b846","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"44d493b31f88fda82903a4a6cca276c5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/7b9f8632-d395-4313-a831-f64f6ae6b846","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931133,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"44d493b31f88fda82903a4a6cca276c5","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b9f8632-d395-4313-a831-f64f6ae6b846"},"level":"info","message":"Attempting to finish experiment","requestID":"44d493b31f88fda82903a4a6cca276c5"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"f2e4b890-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":834,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":834,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.202567,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/bd62f3ef-6fde-48a8-8d7d-567baeec9646","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f2e4b890-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/bd62f3ef-6fde-48a8-8d7d-567baeec9646","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931133,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f2e4b890-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"9c920b27-2c05-49be-b59a-1a9a768a600f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"9c920b27-2c05-49be-b59a-1a9a768a600f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"9c920b27-2c05-49be-b59a-1a9a768a600f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"28ec9a39-ae7b-4462-bf82-2a11df52c7e3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"28ec9a39-ae7b-4462-bf82-2a11df52c7e3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"28ec9a39-ae7b-4462-bf82-2a11df52c7e3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bd62f3ef-6fde-48a8-8d7d-567baeec9646' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/bd62f3ef-6fde-48a8-8d7d-567baeec9646' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bd62f3ef-6fde-48a8-8d7d-567baeec9646","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbd62f3ef-6fde-48a8-8d7d-567baeec9646': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbd62f3ef-6fde-48a8-8d7d-567baeec9646","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"674f6583-54e9-4eca-97d7-5ff7a91df406","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.10637} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2eb2e1002efadeff116790510aa879af","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e019af19-2ff9-4923-b788-fe4c622e2afa","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.1069202} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2eb2e1002efadeff116790510aa879af","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"f2e4b890-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6ff9fb2512d1e50d014e2fb067ddb203","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6ff9fb2512d1e50d014e2fb067ddb203","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/bd62f3ef-6fde-48a8-8d7d-567baeec9646"}}},"level":"info","message":"received a callback","requestID":"2eb2e1002efadeff116790510aa879af"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/bd62f3ef-6fde-48a8-8d7d-567baeec9646"}}},"level":"info","message":"received a callback","requestID":"6ff9fb2512d1e50d014e2fb067ddb203"} device-1 | {"data":{"peerconnection":"bd62f3ef-6fde-48a8-8d7d-567baeec9646","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"f2e4b890-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/bd62f3ef-6fde-48a8-8d7d-567baeec9646 204 50ms","method":"DELETE","requestID":"f2e4b890-782a-11ef-88d4-5fea3f61bb98","responseTime":50,"status":204,"url":"/peerconnections/bd62f3ef-6fde-48a8-8d7d-567baeec9646"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b9f8632-d395-4313-a831-f64f6ae6b846"},"level":"info","message":"Successfully finished experiment","requestID":"44d493b31f88fda82903a4a6cca276c5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f2efb510-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":835,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c920b27-2c05-49be-b59a-1a9a768a600f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4a518f4a-0dc4-4620-9fbc-c15231b934ee","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.1607835} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":835,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.082094,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f2efb510-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"f2efb510-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f2efb510-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/9c920b27-2c05-49be-b59a-1a9a768a600f/signaling 200 15ms","method":"POST","requestID":"f2efb510-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/9c920b27-2c05-49be-b59a-1a9a768a600f/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7b9f8632-d395-4313-a831-f64f6ae6b846': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7b9f8632-d395-4313-a831-f64f6ae6b846","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"341941e3-da3a-4fef-997b-e85c1eb66ffe","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.1682105} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d1bca1b4-fb11-4593-98a0-9a4e712cc7d8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.168767} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"44d493b31f88fda82903a4a6cca276c5","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f2f27430-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":836,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28ec9a39-ae7b-4462-bf82-2a11df52c7e3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"781135bd-6138-4b3f-b80a-5de679370673","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.1790774} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":836,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.957096,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f2f27430-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"f2f27430-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f2f27430-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3/signaling 200 15ms","method":"POST","requestID":"f2f27430-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/7b9f8632-d395-4313-a831-f64f6ae6b846","requestID":"44d493b31f88fda82903a4a6cca276c5"} gateway-1 | {"time_local":"21/Sep/2024:15:05:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/7b9f8632-d395-4313-a831-f64f6ae6b846 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.176","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"44d493b31f88fda82903a4a6cca276c5"} gateway-1 | {"time_local":"21/Sep/2024:15:05:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3132","request_time":"2.684","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"283f244e415bc4f6eb6b9abda4a3e419"} gateway-1 | {"time_local":"21/Sep/2024:15:05:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3130","request_time":"2.698","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"270459abfc5b4b18dee2e425b6959808"} experiment-1 | {"level":"info","message":"DELETE /experiments/7b9f8632-d395-4313-a831-f64f6ae6b846 204 171ms","method":"DELETE","requestID":"44d493b31f88fda82903a4a6cca276c5","responseTime":171,"status":204,"url":"/experiments/7b9f8632-d395-4313-a831-f64f6ae6b846"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"2eb2e1002efadeff116790510aa879af","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"2eb2e1002efadeff116790510aa879af"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"6ff9fb2512d1e50d014e2fb067ddb203","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.134","http_referrer":"","http_user_agent":"node-fetch","requestID":"6ff9fb2512d1e50d014e2fb067ddb203"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0","level":"info","message":"auth send jwt","requestID":"ad544a369925ca0648c5799dcad2d1f8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ad544a369925ca0648c5799dcad2d1f8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ad544a369925ca0648c5799dcad2d1f8"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/28ec9a39-ae7b-4462-bf82-2a11df52c7e3' closed"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":837,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":837,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.748258,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ad544a369925ca0648c5799dcad2d1f8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931133,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ad544a369925ca0648c5799dcad2d1f8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/9c920b27-2c05-49be-b59a-1a9a768a600f' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"dd3bda91-442a-48d1-a8ab-38378198579f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.2641385} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ad544a369925ca0648c5799dcad2d1f8","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4d204bf3-1a8a-4340-b49c-c158d9ff2376","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.2699938} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ad544a369925ca0648c5799dcad2d1f8","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"109d1b62-2f2b-490c-84cd-608ae78d2bde","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.279867} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"60e01f27-4c2c-4b2f-9e0f-46ef97c3f127","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.2800217} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"ad544a369925ca0648c5799dcad2d1f8","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:33.279839561Z"}]},"request_id":"93a5dad4-d056-42b6-8116-88258f56732a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.2848125} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ad544a369925ca0648c5799dcad2d1f8","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ad544a369925ca0648c5799dcad2d1f8"} gateway-1 | {"time_local":"21/Sep/2024:15:05:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ad544a369925ca0648c5799dcad2d1f8"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"ad544a369925ca0648c5799dcad2d1f8","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0","level":"info","message":"auth send jwt","requestID":"a03deb4dfaf28c8d4ee7c1d5a2b3fe51"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a03deb4dfaf28c8d4ee7c1d5a2b3fe51","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a03deb4dfaf28c8d4ee7c1d5a2b3fe51"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":838,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":838,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.74208,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a03deb4dfaf28c8d4ee7c1d5a2b3fe51","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931133,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a03deb4dfaf28c8d4ee7c1d5a2b3fe51","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d5001af-eef6-418c-a358-449e04782cc8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b1738ece-5d3d-4e08-8364-04f02051f6e5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.3080904} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a03deb4dfaf28c8d4ee7c1d5a2b3fe51","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"423dbe5a-765e-49a3-aefa-844ef9f53eec","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.3135612} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a03deb4dfaf28c8d4ee7c1d5a2b3fe51","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d5001af-eef6-418c-a358-449e04782cc8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"9820d469-e879-4176-b84b-bc0d1c8bb14f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.3292682} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"296f91be-64df-4172-9252-384c553e8c49","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.3294115} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"a03deb4dfaf28c8d4ee7c1d5a2b3fe51","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d5001af-eef6-418c-a358-449e04782cc8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d5001af-eef6-418c-a358-449e04782cc8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:33.329242007Z"}]},"request_id":"49ba2bf8-df34-4607-a114-249650a8b38c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.3343642} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a03deb4dfaf28c8d4ee7c1d5a2b3fe51","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a03deb4dfaf28c8d4ee7c1d5a2b3fe51"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"a03deb4dfaf28c8d4ee7c1d5a2b3fe51","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a03deb4dfaf28c8d4ee7c1d5a2b3fe51"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0","level":"info","message":"auth send jwt","requestID":"51c4c4cc2f52523806579194dcaffef6"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"51c4c4cc2f52523806579194dcaffef6","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"51c4c4cc2f52523806579194dcaffef6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0","level":"info","message":"auth send jwt","requestID":"b333f4a2dacab2754da3ece07bebd94a"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"b333f4a2dacab2754da3ece07bebd94a","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b333f4a2dacab2754da3ece07bebd94a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":839,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":839,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.61334,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Received request.","req_id":840,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"51c4c4cc2f52523806579194dcaffef6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931133,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"51c4c4cc2f52523806579194dcaffef6","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Sent response.","req_id":840,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.844154,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b333f4a2dacab2754da3ece07bebd94a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931133,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b333f4a2dacab2754da3ece07bebd94a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:33.279839561Z"}]},"request_id":"a34865d3-d08e-404e-950f-ac4fca8690cc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.8132544} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"51c4c4cc2f52523806579194dcaffef6","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d5001af-eef6-418c-a358-449e04782cc8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d5001af-eef6-418c-a358-449e04782cc8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:33.329242007Z"}]},"request_id":"0cd631b3-d931-47d1-8409-6452f2db9a5f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.8140795} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b333f4a2dacab2754da3ece07bebd94a","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"33af218e-0645-4b94-92c6-3ac44debe177","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.8180633} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"51c4c4cc2f52523806579194dcaffef6","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ef1821bb-8e9a-4ea6-bc35-0b4696780cd3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.8199449} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"b333f4a2dacab2754da3ece07bebd94a","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d5001af-eef6-418c-a358-449e04782cc8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d5001af-eef6-418c-a358-449e04782cc8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:33.329242007Z"}]},"request_id":"640a6932-767f-4af5-9ae5-4d0a17b4e4d0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.8229868} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b333f4a2dacab2754da3ece07bebd94a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b333f4a2dacab2754da3ece07bebd94a"} device-1 | {"level":"info","message":"PATCH /devices/9d5001af-eef6-418c-a358-449e04782cc8 200 23ms","method":"PATCH","requestID":"b333f4a2dacab2754da3ece07bebd94a","responseTime":23,"status":200,"url":"/devices/9d5001af-eef6-418c-a358-449e04782cc8"} gateway-1 | {"time_local":"21/Sep/2024:15:05:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9d5001af-eef6-418c-a358-449e04782cc8 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.033","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b333f4a2dacab2754da3ece07bebd94a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0","level":"info","message":"auth send jwt","requestID":"74f13665a4403378634424f75da027f1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"74f13665a4403378634424f75da027f1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"74f13665a4403378634424f75da027f1"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:33.279839561Z"}]},"request_id":"5ff58af0-353d-447b-9a4a-4d0256f11e24","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.8341377} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"51c4c4cc2f52523806579194dcaffef6","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":841,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":841,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.43449,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:33Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"51c4c4cc2f52523806579194dcaffef6"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"74f13665a4403378634424f75da027f1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931133,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0"} gateway-1 | {"time_local":"21/Sep/2024:15:05:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.045","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"51c4c4cc2f52523806579194dcaffef6"} device-1 | {"level":"info","message":"PATCH /devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35 200 37ms","method":"PATCH","requestID":"51c4c4cc2f52523806579194dcaffef6","responseTime":37,"status":200,"url":"/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"74f13665a4403378634424f75da027f1","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0","level":"info","message":"auth send jwt","requestID":"438e49f303273871885e10fce445fa93"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"438e49f303273871885e10fce445fa93","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"438e49f303273871885e10fce445fa93"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":842,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":842,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.845348,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"438e49f303273871885e10fce445fa93","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931133,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"438e49f303273871885e10fce445fa93","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"74f13665a4403378634424f75da027f1"} gateway-1 | {"time_local":"21/Sep/2024:15:05:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9d5001af-eef6-418c-a358-449e04782cc8/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"74f13665a4403378634424f75da027f1"} device-1 | {"level":"info","message":"POST /devices/9d5001af-eef6-418c-a358-449e04782cc8/websocket 200 17ms","method":"POST","requestID":"74f13665a4403378634424f75da027f1","responseTime":17,"status":200,"url":"/devices/9d5001af-eef6-418c-a358-449e04782cc8/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"438e49f303273871885e10fce445fa93"} gateway-1 | {"time_local":"21/Sep/2024:15:05:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.019","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"438e49f303273871885e10fce445fa93"} device-1 | {"level":"info","message":"POST /devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35/websocket 200 15ms","method":"POST","requestID":"438e49f303273871885e10fce445fa93","responseTime":15,"status":200,"url":"/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0","level":"info","message":"auth send jwt","requestID":"489003e3a0f34c9b2a04132b0ae6a1e9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"489003e3a0f34c9b2a04132b0ae6a1e9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"489003e3a0f34c9b2a04132b0ae6a1e9"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":843,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":843,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.683802,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"489003e3a0f34c9b2a04132b0ae6a1e9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931133,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"489003e3a0f34c9b2a04132b0ae6a1e9","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:33.279839561Z"}]},"request_id":"70dc0c19-3ce1-4135-9bbe-aa53a8aa1bcd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.8934212} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"489003e3a0f34c9b2a04132b0ae6a1e9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"489003e3a0f34c9b2a04132b0ae6a1e9"} gateway-1 | {"time_local":"21/Sep/2024:15:05:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"489003e3a0f34c9b2a04132b0ae6a1e9"} device-1 | {"level":"info","message":"GET /devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35? 200 14ms","method":"GET","requestID":"489003e3a0f34c9b2a04132b0ae6a1e9","responseTime":14,"status":200,"url":"/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0","level":"info","message":"auth send jwt","requestID":"f55b55131b242fd33b926c4ca0dfa7a0"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"f55b55131b242fd33b926c4ca0dfa7a0","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f55b55131b242fd33b926c4ca0dfa7a0"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":844,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":844,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.6791,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f55b55131b242fd33b926c4ca0dfa7a0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931133,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f55b55131b242fd33b926c4ca0dfa7a0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d5001af-eef6-418c-a358-449e04782cc8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d5001af-eef6-418c-a358-449e04782cc8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:33.329242007Z"}]},"request_id":"b54b38eb-1ef1-44ab-aa3f-0b139681d067","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.9143486} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f55b55131b242fd33b926c4ca0dfa7a0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f55b55131b242fd33b926c4ca0dfa7a0"} gateway-1 | {"time_local":"21/Sep/2024:15:05:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9d5001af-eef6-418c-a358-449e04782cc8? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f55b55131b242fd33b926c4ca0dfa7a0"} device-1 | {"level":"info","message":"GET /devices/9d5001af-eef6-418c-a358-449e04782cc8? 200 12ms","method":"GET","requestID":"f55b55131b242fd33b926c4ca0dfa7a0","responseTime":12,"status":200,"url":"/devices/9d5001af-eef6-418c-a358-449e04782cc8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0","level":"info","message":"auth send jwt","requestID":"9aa172ab3145cdabeab15d3c8f155370"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9aa172ab3145cdabeab15d3c8f155370","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"9aa172ab3145cdabeab15d3c8f155370"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":845,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":845,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.23318,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"9aa172ab3145cdabeab15d3c8f155370","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931133,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9aa172ab3145cdabeab15d3c8f155370","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0"},"level":"info","message":"Attempting to run experiment","requestID":"9aa172ab3145cdabeab15d3c8f155370"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0"},"level":"info","message":"Attempting to book experiment","requestID":"9aa172ab3145cdabeab15d3c8f155370"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0"},"level":"info","message":"Successfully booked experiment","requestID":"9aa172ab3145cdabeab15d3c8f155370"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f36b9bd0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f36bc2e0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":846,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":846,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.639222,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f36b9bd0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931133,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f36b9bd0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Received request.","req_id":847,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Sent response.","req_id":847,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.510458,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f36bc2e0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931133,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f36bc2e0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:33.279839561Z"}]},"request_id":"cc7eac54-da14-444a-acf5-ad8f8d0b7c0a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.9775176} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f36b9bd0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d5001af-eef6-418c-a358-449e04782cc8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d5001af-eef6-418c-a358-449e04782cc8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:33.329242007Z"}]},"request_id":"37bda27b-6b21-41b7-9de0-29f5fb0ba362","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931133.978319} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f36bc2e0-782a-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f36b9bd0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35? 200 17ms","method":"GET","requestID":"f36b9bd0-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f36bc2e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/9d5001af-eef6-418c-a358-449e04782cc8? 200 18ms","method":"GET","requestID":"f36bc2e0-782a-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/9d5001af-eef6-418c-a358-449e04782cc8?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0"},"level":"info","message":"Setting up experiment","requestID":"9aa172ab3145cdabeab15d3c8f155370"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"9aa172ab3145cdabeab15d3c8f155370"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0"},"level":"info","message":"Successfully locked booking for experiment","requestID":"9aa172ab3145cdabeab15d3c8f155370"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"9aa172ab3145cdabeab15d3c8f155370"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"9aa172ab3145cdabeab15d3c8f155370"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0"},"level":"info","message":"Attempting to update booking for experiment","requestID":"9aa172ab3145cdabeab15d3c8f155370"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0"},"level":"info","message":"Successfully updated booking for experiment","requestID":"9aa172ab3145cdabeab15d3c8f155370"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0"},"level":"info","message":"Successfully set up experiment","requestID":"9aa172ab3145cdabeab15d3c8f155370"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f376bf60-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f3773490-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0"},"level":"info","message":"Successfully running experiment","requestID":"9aa172ab3145cdabeab15d3c8f155370"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f377a9c0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":848,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:34Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":848,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.399398,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Received request.","req_id":849,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f376bf60-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931133,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f376bf60-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Sent response.","req_id":849,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.648554,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f3773490-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931133,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"f3773490-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":850,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:34Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c6f45cdc-8be9-4118-ab5f-895e8a41a582","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931134.05551} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":850,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.360485,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f377a9c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"f377a9c0-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:33.279839561Z"}]},"request_id":"024bd639-f483-4be6-88a1-0d0e25a6fbdb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931134.057322} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d5001af-eef6-418c-a358-449e04782cc8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d5001af-eef6-418c-a358-449e04782cc8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:33.329242007Z"}]},"request_id":"291d4fd3-bc57-45e1-ad50-1f597dfc7848","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931134.0591497} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"f376bf60-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"f3773490-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f377a9c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35/signaling 200 24ms","method":"POST","requestID":"f377a9c0-782a-11ef-88d4-5fea3f61bb98","responseTime":24,"status":200,"url":"/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f376bf60-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcedd70b9-4fa8-4c30-bbaf-07ffb8a448a0#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcedd70b9-4fa8-4c30-bbaf-07ffb8a448a0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"ba54e760-d7d6-4ed1-8e3a-3206fa467b5e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931134.0698967} device-1 | {"level":"info","message":"GET /devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35? 200 32ms","method":"GET","requestID":"f376bf60-782a-11ef-88d4-5fea3f61bb98","responseTime":32,"status":200,"url":"/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2186edf5-fa94-413f-bf40-e85ce22f000f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931134.0702868} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f3773490-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/9d5001af-eef6-418c-a358-449e04782cc8? 200 31ms","method":"GET","requestID":"f3773490-782a-11ef-88d4-5fea3f61bb98","responseTime":31,"status":200,"url":"/devices/9d5001af-eef6-418c-a358-449e04782cc8?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"9aa172ab3145cdabeab15d3c8f155370","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f37c1690-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f37c64b0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":851,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Received request.","req_id":852,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:34Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d5001af-eef6-418c-a358-449e04782cc8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a34e0cc7-8988-45a9-98c5-007d99e3c4e4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931134.0788987} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":851,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.588097,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:34Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"9aa172ab3145cdabeab15d3c8f155370"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f37c1690-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} experiment-1 | {"level":"info","message":"POST /experiments? 201 156ms","method":"POST","requestID":"9aa172ab3145cdabeab15d3c8f155370","responseTime":156,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f37c1690-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"701d1960-b262-4ef5-9c0a-3f5d2a19d1df","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931134.0819278} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Sent response.","req_id":852,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.387646,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:34Z"} gateway-1 | {"time_local":"21/Sep/2024:15:05:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1296","request_time":"0.162","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9aa172ab3145cdabeab15d3c8f155370"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f37c64b0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f37c64b0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f37c1690-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/9d5001af-eef6-418c-a358-449e04782cc8/signaling 200 14ms","method":"POST","requestID":"f37c1690-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/9d5001af-eef6-418c-a358-449e04782cc8/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzNH0.61HyfjF2D_B-_GNpargd3E2HGNehdIs04vbySTm8MSo","level":"info","message":"auth send jwt","requestID":"2f27fdcfa1e78a75cc2e8d81964d9d8e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2f27fdcfa1e78a75cc2e8d81964d9d8e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2f27fdcfa1e78a75cc2e8d81964d9d8e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f37c64b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35/signaling 200 15ms","method":"POST","requestID":"f37c64b0-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":853,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:34Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f37f4ae0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":853,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.624713,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"2f27fdcfa1e78a75cc2e8d81964d9d8e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931134,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzNH0.61HyfjF2D_B-_GNpargd3E2HGNehdIs04vbySTm8MSo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2f27fdcfa1e78a75cc2e8d81964d9d8e","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":854,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:34Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:33.279839561Z"}]},"request_id":"fd6fd94c-6775-4321-9c86-347d657ac960","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931134.099272} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d5001af-eef6-418c-a358-449e04782cc8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ddabaac4-454b-4ab5-8431-de39affbac96","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931134.0994012} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2f27fdcfa1e78a75cc2e8d81964d9d8e","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":854,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.733763,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f37f4ae0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f37f4ae0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2f27fdcfa1e78a75cc2e8d81964d9d8e"} gateway-1 | {"time_local":"21/Sep/2024:15:05:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2f27fdcfa1e78a75cc2e8d81964d9d8e"} device-1 | {"level":"info","message":"GET /devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35? 200 16ms","method":"GET","requestID":"2f27fdcfa1e78a75cc2e8d81964d9d8e","responseTime":16,"status":200,"url":"/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f37f4ae0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/9d5001af-eef6-418c-a358-449e04782cc8/signaling 200 10ms","method":"POST","requestID":"f37f4ae0-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/9d5001af-eef6-418c-a358-449e04782cc8/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"9aa172ab3145cdabeab15d3c8f155370"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f3811fa0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f3816dc0-782a-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzNH0.61HyfjF2D_B-_GNpargd3E2HGNehdIs04vbySTm8MSo","level":"info","message":"auth send jwt","requestID":"8a325edf6b722e321b71af0f1c6b6b1a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8a325edf6b722e321b71af0f1c6b6b1a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8a325edf6b722e321b71af0f1c6b6b1a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":855,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:34Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":855,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.653931,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Received request.","req_id":856,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f3811fa0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931133,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f3811fa0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58234","level":"info","msg":"Sent response.","req_id":856,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.719519,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f3816dc0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931133,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"f3816dc0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":857,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:34Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":857,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.880779,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"8a325edf6b722e321b71af0f1c6b6b1a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931134,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzNH0.61HyfjF2D_B-_GNpargd3E2HGNehdIs04vbySTm8MSo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8a325edf6b722e321b71af0f1c6b6b1a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:33.279839561Z"}]},"request_id":"a7c0aa20-5be0-450c-a740-9f73da3f8627","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931134.1200395} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f3811fa0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d5001af-eef6-418c-a358-449e04782cc8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d5001af-eef6-418c-a358-449e04782cc8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:33.329242007Z"}]},"request_id":"0c68565c-a7ac-4214-86fb-70dac6ed9d6e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931134.1228464} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f3811fa0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f3816dc0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35? 200 20ms","method":"GET","requestID":"f3811fa0-782a-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d5001af-eef6-418c-a358-449e04782cc8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d5001af-eef6-418c-a358-449e04782cc8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:33.329242007Z"}]},"request_id":"2e211e5f-397b-4285-9617-aa4d411e7dbb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931134.1262891} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8a325edf6b722e321b71af0f1c6b6b1a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f3816dc0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/9d5001af-eef6-418c-a358-449e04782cc8? 200 23ms","method":"GET","requestID":"f3816dc0-782a-11ef-88d4-5fea3f61bb98","responseTime":23,"status":200,"url":"/devices/9d5001af-eef6-418c-a358-449e04782cc8?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0"},"level":"info","message":"Building connection plan","requestID":"9aa172ab3145cdabeab15d3c8f155370"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"8e2ec1ea-18ee-4513-a1f4-b39a6521d148"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"04fa876d-4919-4fe8-8acf-f96c48c126bd"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"40e67620-cb74-4935-baa6-a295935f681a"}]},"level":"info","message":"Built pairwise service configurations","requestID":"9aa172ab3145cdabeab15d3c8f155370"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8a325edf6b722e321b71af0f1c6b6b1a"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"9aa172ab3145cdabeab15d3c8f155370"} gateway-1 | {"time_local":"21/Sep/2024:15:05:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9d5001af-eef6-418c-a358-449e04782cc8? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8a325edf6b722e321b71af0f1c6b6b1a"} device-1 | {"level":"info","message":"GET /devices/9d5001af-eef6-418c-a358-449e04782cc8? 200 22ms","method":"GET","requestID":"8a325edf6b722e321b71af0f1c6b6b1a","responseTime":22,"status":200,"url":"/devices/9d5001af-eef6-418c-a358-449e04782cc8?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"f3853e50-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":858,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:34Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":858,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.893339,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f3853e50-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931133,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzM30.oNsz0E0gsl22q7cy2P5V0ook6xCJDNzWlB7ADyR9jM0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f3853e50-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"99b352e9-f65c-4a91-877d-06222113ce0d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931134.1486113} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d529537a-c6b7-45fb-a917-4b2292165030","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931134.1487906} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"f3853e50-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"f3853e50-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"f3853e50-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/42a0a446-7c7a-4166-b44e-06f3a4e2a901'","requestID":"f3853e50-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/42a0a446-7c7a-4166-b44e-06f3a4e2a901'","requestID":"f3853e50-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"f3853e50-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 29ms","method":"POST","requestID":"f3853e50-782a-11ef-88d4-5fea3f61bb98","responseTime":29,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"f3853e50-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"9aa172ab3145cdabeab15d3c8f155370"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f38d54a0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":859,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:34Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"776047b3-4b9a-4b98-b00f-f4356a648735","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931134.191392} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":859,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.715626,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f38d54a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f38d54a0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f38d54a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35/signaling 200 9ms","method":"POST","requestID":"f38d54a0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f38edb40-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":860,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:34Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d5001af-eef6-418c-a358-449e04782cc8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fce23675-fc02-444e-bfb0-8ddfcb365585","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931134.200929} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":860,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.428538,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f38edb40-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f38edb40-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f38edb40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/9d5001af-eef6-418c-a358-449e04782cc8/signaling 200 8ms","method":"POST","requestID":"f38edb40-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/9d5001af-eef6-418c-a358-449e04782cc8/signaling"} device-1 | {"device":"c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"42a0a446-7c7a-4166-b44e-06f3a4e2a901","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9d5001af-eef6-418c-a358-449e04782cc8","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"42a0a446-7c7a-4166-b44e-06f3a4e2a901","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9d5001af-eef6-418c-a358-449e04782cc8","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"9d5001af-eef6-418c-a358-449e04782cc8","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"9d5001af-eef6-418c-a358-449e04782cc8","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"9d5001af-eef6-418c-a358-449e04782cc8","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/42a0a446-7c7a-4166-b44e-06f3a4e2a901' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"42a0a446-7c7a-4166-b44e-06f3a4e2a901","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9c0ad5058b95cb86024a47d762316b54","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9c0ad5058b95cb86024a47d762316b54","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/42a0a446-7c7a-4166-b44e-06f3a4e2a901"}}},"level":"info","message":"received a callback","requestID":"9c0ad5058b95cb86024a47d762316b54"} device-1 | {"device":"c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"9c0ad5058b95cb86024a47d762316b54","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"9c0ad5058b95cb86024a47d762316b54"} device-1 | {"data":{"peerconnection":"42a0a446-7c7a-4166-b44e-06f3a4e2a901","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9d5001af-eef6-418c-a358-449e04782cc8","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"9d5001af-eef6-418c-a358-449e04782cc8","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"42a0a446-7c7a-4166-b44e-06f3a4e2a901","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/42a0a446-7c7a-4166-b44e-06f3a4e2a901' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"42a0a446-7c7a-4166-b44e-06f3a4e2a901","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"09de9844d69a5c7528a47eb43f06ebe7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"09de9844d69a5c7528a47eb43f06ebe7","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/42a0a446-7c7a-4166-b44e-06f3a4e2a901"}}},"level":"info","message":"received a callback","requestID":"09de9844d69a5c7528a47eb43f06ebe7"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"f4ceae40-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":861,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:36Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F42a0a446-7c7a-4166-b44e-06f3a4e2a901","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1097cb4b-e542-42a1-a6ad-2add0048f954","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931136.2986932} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":861,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.70679,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/42a0a446-7c7a-4166-b44e-06f3a4e2a901","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f4ceae40-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/42a0a446-7c7a-4166-b44e-06f3a4e2a901","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f4ceae40-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"f4ceae40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/42a0a446-7c7a-4166-b44e-06f3a4e2a901 200 11ms","method":"GET","requestID":"f4ceae40-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/peerconnections/42a0a446-7c7a-4166-b44e-06f3a4e2a901"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 51ms","method":"POST","requestID":"09de9844d69a5c7528a47eb43f06ebe7","responseTime":51,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch","requestID":"09de9844d69a5c7528a47eb43f06ebe7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f4d4c8c0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":862,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:36Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d5001af-eef6-418c-a358-449e04782cc8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"80381da0-24d2-4be6-b36f-76625e2e465a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931136.338134} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":862,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.199555,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f4d4c8c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f4d4c8c0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f4d4c8c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/9d5001af-eef6-418c-a358-449e04782cc8/signaling 200 13ms","method":"POST","requestID":"f4d4c8c0-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/9d5001af-eef6-418c-a358-449e04782cc8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f4d739c0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":863,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:36Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e6583da4-de6c-4afa-bfe2-32dfee907b0c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931136.3549001} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":863,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.73477,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f4d739c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"f4d739c0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f4d739c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35/signaling 200 13ms","method":"POST","requestID":"f4d739c0-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzNn0.jdIlTULAlzu4Zv0ZrR94ajLhjFXG8wQHT9AGT1c__Mc","level":"info","message":"auth send jwt","requestID":"1ca8f16bd5f29062a84218bc73d4d4b4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1ca8f16bd5f29062a84218bc73d4d4b4","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0","requestID":"1ca8f16bd5f29062a84218bc73d4d4b4"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":864,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:36Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":864,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.135577,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1ca8f16bd5f29062a84218bc73d4d4b4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931136,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzNn0.jdIlTULAlzu4Zv0ZrR94ajLhjFXG8wQHT9AGT1c__Mc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1ca8f16bd5f29062a84218bc73d4d4b4","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0","requestID":"1ca8f16bd5f29062a84218bc73d4d4b4"} gateway-1 | {"time_local":"21/Sep/2024:15:05:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0 HTTP/1.1","status": "200","body_bytes_sent":"1369","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1ca8f16bd5f29062a84218bc73d4d4b4"} experiment-1 | {"level":"info","message":"GET /experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0 200 14ms","method":"GET","requestID":"1ca8f16bd5f29062a84218bc73d4d4b4","responseTime":14,"status":200,"url":"/experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzNn0.jdIlTULAlzu4Zv0ZrR94ajLhjFXG8wQHT9AGT1c__Mc","level":"info","message":"auth send jwt","requestID":"24d8b82ba45dd443e0be8949d1d227db"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"24d8b82ba45dd443e0be8949d1d227db","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0","requestID":"24d8b82ba45dd443e0be8949d1d227db"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":865,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:36Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":865,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.045117,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:36Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"24d8b82ba45dd443e0be8949d1d227db","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931136,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzNn0.jdIlTULAlzu4Zv0ZrR94ajLhjFXG8wQHT9AGT1c__Mc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"24d8b82ba45dd443e0be8949d1d227db","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0"},"level":"info","message":"Attempting to finish experiment","requestID":"24d8b82ba45dd443e0be8949d1d227db"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"f4df7720-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":866,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:36Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":866,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.265241,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:36Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/42a0a446-7c7a-4166-b44e-06f3a4e2a901","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f4df7720-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/42a0a446-7c7a-4166-b44e-06f3a4e2a901","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931136,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzNn0.jdIlTULAlzu4Zv0ZrR94ajLhjFXG8wQHT9AGT1c__Mc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f4df7720-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"9d5001af-eef6-418c-a358-449e04782cc8","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"9d5001af-eef6-418c-a358-449e04782cc8","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"9d5001af-eef6-418c-a358-449e04782cc8","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/42a0a446-7c7a-4166-b44e-06f3a4e2a901' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/42a0a446-7c7a-4166-b44e-06f3a4e2a901' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"42a0a446-7c7a-4166-b44e-06f3a4e2a901","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cb448004e72b4dc28a4a9c233dc417d7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"cb448004e72b4dc28a4a9c233dc417d7","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F42a0a446-7c7a-4166-b44e-06f3a4e2a901': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F42a0a446-7c7a-4166-b44e-06f3a4e2a901","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"e09ddad4-4752-4818-87f3-f36e1d16e3fd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931136.4316294} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7356f604ecf71239500fb8cdc8f7566b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"61303089-b47d-4e7c-ab23-81400548a597","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931136.4321635} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7356f604ecf71239500fb8cdc8f7566b","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/42a0a446-7c7a-4166-b44e-06f3a4e2a901"}}},"level":"info","message":"received a callback","requestID":"cb448004e72b4dc28a4a9c233dc417d7"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/42a0a446-7c7a-4166-b44e-06f3a4e2a901"}}},"level":"info","message":"received a callback","requestID":"7356f604ecf71239500fb8cdc8f7566b"} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"f4df7720-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"42a0a446-7c7a-4166-b44e-06f3a4e2a901","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"f4df7720-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/42a0a446-7c7a-4166-b44e-06f3a4e2a901 204 51ms","method":"DELETE","requestID":"f4df7720-782a-11ef-88d4-5fea3f61bb98","responseTime":51,"status":204,"url":"/peerconnections/42a0a446-7c7a-4166-b44e-06f3a4e2a901"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0"},"level":"info","message":"Successfully finished experiment","requestID":"24d8b82ba45dd443e0be8949d1d227db"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f4ea9ab0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":867,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:36Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d5001af-eef6-418c-a358-449e04782cc8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"49ca18da-526f-4d13-9c9b-2dd877bb4904","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931136.4828913} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":867,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.279641,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f4ea9ab0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f4ea9ab0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f4ea9ab0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/9d5001af-eef6-418c-a358-449e04782cc8/signaling 200 13ms","method":"POST","requestID":"f4ea9ab0-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/9d5001af-eef6-418c-a358-449e04782cc8/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcedd70b9-4fa8-4c30-bbaf-07ffb8a448a0': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcedd70b9-4fa8-4c30-bbaf-07ffb8a448a0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"5e6f751d-6b43-4c93-9e5f-72c939ba70ba","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931136.4902906} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f4ed0bb0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ef413358-e98a-44b8-9003-827785af84aa","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931136.4906476} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"24d8b82ba45dd443e0be8949d1d227db","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":868,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:36Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"10d7d410-b52b-4069-850e-e1554f4472b3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931136.4977756} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":868,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.510732,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f4ed0bb0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f4ed0bb0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f4ed0bb0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35/signaling 200 14ms","method":"POST","requestID":"f4ed0bb0-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0","requestID":"24d8b82ba45dd443e0be8949d1d227db"} gateway-1 | {"time_local":"21/Sep/2024:15:05:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.174","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"24d8b82ba45dd443e0be8949d1d227db"} experiment-1 | {"level":"info","message":"DELETE /experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0 204 171ms","method":"DELETE","requestID":"24d8b82ba45dd443e0be8949d1d227db","responseTime":171,"status":204,"url":"/experiments/cedd70b9-4fa8-4c30-bbaf-07ffb8a448a0"} gateway-1 | {"time_local":"21/Sep/2024:15:05:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3130","request_time":"2.708","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"4462e1f93bbc31dc6d630778a9a0177d"} gateway-1 | {"time_local":"21/Sep/2024:15:05:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3132","request_time":"2.701","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f57f763e2032e44c70ca6493352a9e5a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 129ms","method":"POST","requestID":"cb448004e72b4dc28a4a9c233dc417d7","responseTime":129,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"cb448004e72b4dc28a4a9c233dc417d7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"7356f604ecf71239500fb8cdc8f7566b","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.134","http_referrer":"","http_user_agent":"node-fetch","requestID":"7356f604ecf71239500fb8cdc8f7566b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzNn0.jdIlTULAlzu4Zv0ZrR94ajLhjFXG8wQHT9AGT1c__Mc","level":"info","message":"auth send jwt","requestID":"bf86c415baa52fc3bf4b22e0723bf6f4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bf86c415baa52fc3bf4b22e0723bf6f4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/c49da6ac-da23-4d0a-9c3e-e0af4fbb7d35' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"bf86c415baa52fc3bf4b22e0723bf6f4"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":869,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:36Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":869,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.771447,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bf86c415baa52fc3bf4b22e0723bf6f4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931136,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzNn0.jdIlTULAlzu4Zv0ZrR94ajLhjFXG8wQHT9AGT1c__Mc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bf86c415baa52fc3bf4b22e0723bf6f4","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/9d5001af-eef6-418c-a358-449e04782cc8' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"725e8c4e-ff3e-477c-8bc6-e894ebc0dff6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931136.5865629} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bf86c415baa52fc3bf4b22e0723bf6f4","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e71df41e-5dcd-4189-87e5-034191c3f791","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931136.5917044} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"bf86c415baa52fc3bf4b22e0723bf6f4","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"a4fdcc9d-be1d-48ad-bdab-f355c5cc4abe","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931136.6018445} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5e6a4098-a081-473a-a944-f6064f1a6dd9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931136.601966} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"bf86c415baa52fc3bf4b22e0723bf6f4","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:36.601805466Z"}]},"request_id":"31b3831a-b98d-40b9-acdb-a562af23166a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931136.6068788} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bf86c415baa52fc3bf4b22e0723bf6f4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"bf86c415baa52fc3bf4b22e0723bf6f4"} gateway-1 | {"time_local":"21/Sep/2024:15:05:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bf86c415baa52fc3bf4b22e0723bf6f4"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"bf86c415baa52fc3bf4b22e0723bf6f4","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzNn0.jdIlTULAlzu4Zv0ZrR94ajLhjFXG8wQHT9AGT1c__Mc","level":"info","message":"auth send jwt","requestID":"3613ed52d80fd9c5c846328107f40428"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3613ed52d80fd9c5c846328107f40428","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3613ed52d80fd9c5c846328107f40428"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":870,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:36Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":870,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.756577,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"3613ed52d80fd9c5c846328107f40428","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931136,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzNn0.jdIlTULAlzu4Zv0ZrR94ajLhjFXG8wQHT9AGT1c__Mc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3613ed52d80fd9c5c846328107f40428","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a3168f48-9cb2-49b1-a442-5d32e6b63dc6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931136.6372678} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3613ed52d80fd9c5c846328107f40428","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fda9afde-998a-4d8c-bdc6-b340ad6d712d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931136.6425989} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"3613ed52d80fd9c5c846328107f40428","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"8e80ff89-f427-4614-8654-a923bd5df756","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931136.654403} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1b4f1346-339c-441a-b29c-b09d7ac4e828","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931136.6545582} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"3613ed52d80fd9c5c846328107f40428","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:36.654366190Z"}]},"request_id":"44a2f855-7cca-413d-851b-14f87859d688","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931136.6599932} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3613ed52d80fd9c5c846328107f40428","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3613ed52d80fd9c5c846328107f40428"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"3613ed52d80fd9c5c846328107f40428","responseTime":47,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3613ed52d80fd9c5c846328107f40428"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d979406bdc9a1ed9ab66100857300128","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d979406bdc9a1ed9ab66100857300128","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d979406bdc9a1ed9ab66100857300128"} device-1 | {"level":"info","message":"OPTIONS /devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173/websocket 200 1ms","method":"OPTIONS","requestID":"d979406bdc9a1ed9ab66100857300128","responseTime":1,"status":200,"url":"/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOH0.jHVxlGOF3m-vy2CfO5Dl3oAxGJDsDyOHcio3dUVnerE","level":"info","message":"auth send jwt","requestID":"6e1f6b236a36887fafb544390d198d35"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6e1f6b236a36887fafb544390d198d35","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6e1f6b236a36887fafb544390d198d35"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"25ab0515e74ac36b7c68b4590c841b7e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"25ab0515e74ac36b7c68b4590c841b7e","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"25ab0515e74ac36b7c68b4590c841b7e"} device-1 | {"level":"info","message":"OPTIONS /devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f/websocket 200 1ms","method":"OPTIONS","requestID":"25ab0515e74ac36b7c68b4590c841b7e","responseTime":1,"status":200,"url":"/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f/websocket"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":871,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:38Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":871,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.584169,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"6e1f6b236a36887fafb544390d198d35","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931138,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOH0.jHVxlGOF3m-vy2CfO5Dl3oAxGJDsDyOHcio3dUVnerE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6e1f6b236a36887fafb544390d198d35","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOH0.jHVxlGOF3m-vy2CfO5Dl3oAxGJDsDyOHcio3dUVnerE","level":"info","message":"auth send jwt","requestID":"e419229c4feac71619123b21f11f84cd"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"e419229c4feac71619123b21f11f84cd","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e419229c4feac71619123b21f11f84cd"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":872,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:38Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":872,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.609632,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e419229c4feac71619123b21f11f84cd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931138,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOH0.jHVxlGOF3m-vy2CfO5Dl3oAxGJDsDyOHcio3dUVnerE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e419229c4feac71619123b21f11f84cd","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6e1f6b236a36887fafb544390d198d35"} device-1 | {"level":"info","message":"POST /devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173/websocket 200 27ms","method":"POST","requestID":"6e1f6b236a36887fafb544390d198d35","responseTime":27,"status":200,"url":"/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:05:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.032","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6e1f6b236a36887fafb544390d198d35"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e419229c4feac71619123b21f11f84cd"} gateway-1 | {"time_local":"21/Sep/2024:15:05:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.032","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e419229c4feac71619123b21f11f84cd"} device-1 | {"level":"info","message":"POST /devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f/websocket 200 24ms","method":"POST","requestID":"e419229c4feac71619123b21f11f84cd","responseTime":24,"status":200,"url":"/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d206c6e0c67d326e547b2e0778447417","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d206c6e0c67d326e547b2e0778447417","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d206c6e0c67d326e547b2e0778447417"} device-1 | {"level":"info","message":"OPTIONS /devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173? 200 1ms","method":"OPTIONS","requestID":"d206c6e0c67d326e547b2e0778447417","responseTime":1,"status":200,"url":"/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4a3aff3ea72215be64f561cdfd26587a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4a3aff3ea72215be64f561cdfd26587a","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4a3aff3ea72215be64f561cdfd26587a"} device-1 | {"level":"info","message":"OPTIONS /devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f? 200 1ms","method":"OPTIONS","requestID":"4a3aff3ea72215be64f561cdfd26587a","responseTime":1,"status":200,"url":"/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOH0.jHVxlGOF3m-vy2CfO5Dl3oAxGJDsDyOHcio3dUVnerE","level":"info","message":"auth send jwt","requestID":"30423137ccd886563beee5f93a448767"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"30423137ccd886563beee5f93a448767","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"30423137ccd886563beee5f93a448767"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOH0.jHVxlGOF3m-vy2CfO5Dl3oAxGJDsDyOHcio3dUVnerE","level":"info","message":"auth send jwt","requestID":"435eef6d00b548b6d20250e7c89cf91b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"435eef6d00b548b6d20250e7c89cf91b","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":873,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:38Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":873,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.873988,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:38Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"435eef6d00b548b6d20250e7c89cf91b"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"30423137ccd886563beee5f93a448767","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931138,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOH0.jHVxlGOF3m-vy2CfO5Dl3oAxGJDsDyOHcio3dUVnerE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"30423137ccd886563beee5f93a448767","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":874,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:38Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":874,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.935063,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"435eef6d00b548b6d20250e7c89cf91b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931138,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOH0.jHVxlGOF3m-vy2CfO5Dl3oAxGJDsDyOHcio3dUVnerE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"435eef6d00b548b6d20250e7c89cf91b","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:36.654366190Z"}]},"request_id":"85d712c7-c362-4e93-9230-cc9e1182afe9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931138.7245748} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"30423137ccd886563beee5f93a448767","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:36.601805466Z"}]},"request_id":"0c7e12e3-7a2c-4146-b232-8dc64a6e1bbf","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931138.7278051} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"435eef6d00b548b6d20250e7c89cf91b","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"561b20d9-ec75-4e3f-a7ba-01987431c02b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931138.7300599} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"30423137ccd886563beee5f93a448767","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"29733102-a9c6-4549-bd74-566bb6a99b1d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931138.7356668} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"435eef6d00b548b6d20250e7c89cf91b","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:36.654366190Z"}]},"request_id":"4773b87a-de9e-482e-abe1-a577ad285701","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931138.7453368} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"30423137ccd886563beee5f93a448767","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"30423137ccd886563beee5f93a448767"} gateway-1 | {"time_local":"21/Sep/2024:15:05:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.046","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"30423137ccd886563beee5f93a448767"} device-1 | {"level":"info","message":"PATCH /devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173? 200 38ms","method":"PATCH","requestID":"30423137ccd886563beee5f93a448767","responseTime":38,"status":200,"url":"/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:36.601805466Z"}]},"request_id":"15fef4e6-8278-4a48-bd85-ee276079f412","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931138.7578094} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"435eef6d00b548b6d20250e7c89cf91b","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"435eef6d00b548b6d20250e7c89cf91b"} device-1 | {"level":"info","message":"PATCH /devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f? 200 46ms","method":"PATCH","requestID":"435eef6d00b548b6d20250e7c89cf91b","responseTime":46,"status":200,"url":"/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.052","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"435eef6d00b548b6d20250e7c89cf91b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOH0.jHVxlGOF3m-vy2CfO5Dl3oAxGJDsDyOHcio3dUVnerE","level":"info","message":"auth send jwt","requestID":"031d7be2f6e9c675d3f73aa3f397e2f7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"031d7be2f6e9c675d3f73aa3f397e2f7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"031d7be2f6e9c675d3f73aa3f397e2f7"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":875,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:38Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":875,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.395577,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"031d7be2f6e9c675d3f73aa3f397e2f7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931138,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOH0.jHVxlGOF3m-vy2CfO5Dl3oAxGJDsDyOHcio3dUVnerE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"031d7be2f6e9c675d3f73aa3f397e2f7","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:36.601805466Z"}]},"request_id":"d513cbb6-6891-434d-bb5d-af85ae5a1510","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931138.78577} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"031d7be2f6e9c675d3f73aa3f397e2f7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"031d7be2f6e9c675d3f73aa3f397e2f7"} device-1 | {"level":"info","message":"GET /devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f? 200 17ms","method":"GET","requestID":"031d7be2f6e9c675d3f73aa3f397e2f7","responseTime":17,"status":200,"url":"/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"031d7be2f6e9c675d3f73aa3f397e2f7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOH0.jHVxlGOF3m-vy2CfO5Dl3oAxGJDsDyOHcio3dUVnerE","level":"info","message":"auth send jwt","requestID":"54015c9b8fae67e9dd82912ad803cf9a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"54015c9b8fae67e9dd82912ad803cf9a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"54015c9b8fae67e9dd82912ad803cf9a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":876,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:38Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":876,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.171194,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"54015c9b8fae67e9dd82912ad803cf9a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931138,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOH0.jHVxlGOF3m-vy2CfO5Dl3oAxGJDsDyOHcio3dUVnerE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"54015c9b8fae67e9dd82912ad803cf9a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:36.654366190Z"}]},"request_id":"2b32aba4-a024-4f78-95c8-3fb610abdbf8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931138.8101122} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"54015c9b8fae67e9dd82912ad803cf9a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"54015c9b8fae67e9dd82912ad803cf9a"} device-1 | {"level":"info","message":"GET /devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173? 200 17ms","method":"GET","requestID":"54015c9b8fae67e9dd82912ad803cf9a","responseTime":17,"status":200,"url":"/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"54015c9b8fae67e9dd82912ad803cf9a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOH0.jHVxlGOF3m-vy2CfO5Dl3oAxGJDsDyOHcio3dUVnerE","level":"info","message":"auth send jwt","requestID":"e0eb96ae42efba615045ccd6b6f817f3"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e0eb96ae42efba615045ccd6b6f817f3","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"e0eb96ae42efba615045ccd6b6f817f3"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":877,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:38Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":877,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.18176,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e0eb96ae42efba615045ccd6b6f817f3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931138,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOH0.jHVxlGOF3m-vy2CfO5Dl3oAxGJDsDyOHcio3dUVnerE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e0eb96ae42efba615045ccd6b6f817f3","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196"},"level":"info","message":"Attempting to run experiment","requestID":"e0eb96ae42efba615045ccd6b6f817f3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196"},"level":"info","message":"Attempting to book experiment","requestID":"e0eb96ae42efba615045ccd6b6f817f3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196"},"level":"info","message":"Successfully booked experiment","requestID":"e0eb96ae42efba615045ccd6b6f817f3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f656fbf0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f6574a10-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":878,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:38Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":878,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.691762,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f656fbf0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931138,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOH0.jHVxlGOF3m-vy2CfO5Dl3oAxGJDsDyOHcio3dUVnerE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f656fbf0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":879,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:38Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":879,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.916805,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f6574a10-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931138,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOH0.jHVxlGOF3m-vy2CfO5Dl3oAxGJDsDyOHcio3dUVnerE"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"f6574a10-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:36.601805466Z"}]},"request_id":"be642bfe-d0e3-4701-8932-2e2aca02badb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931138.876163} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"f656fbf0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:36.654366190Z"}]},"request_id":"adf2b4fa-088d-47cc-9acd-0c11295b4508","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931138.8834765} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f656fbf0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f6574a10-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f? 200 22ms","method":"GET","requestID":"f656fbf0-782a-11ef-88d4-5fea3f61bb98","responseTime":22,"status":200,"url":"/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f6574a10-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173? 200 25ms","method":"GET","requestID":"f6574a10-782a-11ef-88d4-5fea3f61bb98","responseTime":25,"status":200,"url":"/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196"},"level":"info","message":"Setting up experiment","requestID":"e0eb96ae42efba615045ccd6b6f817f3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"e0eb96ae42efba615045ccd6b6f817f3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196"},"level":"info","message":"Successfully locked booking for experiment","requestID":"e0eb96ae42efba615045ccd6b6f817f3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"e0eb96ae42efba615045ccd6b6f817f3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"e0eb96ae42efba615045ccd6b6f817f3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196"},"level":"info","message":"Attempting to update booking for experiment","requestID":"e0eb96ae42efba615045ccd6b6f817f3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196"},"level":"info","message":"Successfully updated booking for experiment","requestID":"e0eb96ae42efba615045ccd6b6f817f3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196"},"level":"info","message":"Successfully set up experiment","requestID":"e0eb96ae42efba615045ccd6b6f817f3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f6637f10-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f663f440-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":880,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:38Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196"},"level":"info","message":"Successfully running experiment","requestID":"e0eb96ae42efba615045ccd6b6f817f3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f6646970-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":880,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.253694,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f6637f10-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931138,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOH0.jHVxlGOF3m-vy2CfO5Dl3oAxGJDsDyOHcio3dUVnerE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f6637f10-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":881,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:38Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":881,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.140088,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f663f440-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931138,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOH0.jHVxlGOF3m-vy2CfO5Dl3oAxGJDsDyOHcio3dUVnerE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f663f440-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":882,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:38Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:36.654366190Z"}]},"request_id":"79f0d6bf-1cc1-447f-85e7-d1e9bb4a408f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931138.9612074} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a0d56613-2971-4db0-9be5-4fbb879f3f42","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931138.961359} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"f663f440-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":882,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.394314,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f6646970-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"f6646970-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:36.601805466Z"}]},"request_id":"38a876a2-e436-4d11-997a-94c3fa3c5fd1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931138.9631155} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"f6637f10-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f663f440-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173? 200 25ms","method":"GET","requestID":"f663f440-782a-11ef-88d4-5fea3f61bb98","responseTime":25,"status":200,"url":"/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa268fa31-5dd5-45d2-a96f-15dc379e3196#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa268fa31-5dd5-45d2-a96f-15dc379e3196","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"ea74f81e-5ccb-464e-99e0-0e9ff8425b74","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931138.9751027} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"16ef01e0-4306-4eb5-b03f-f8f1fcdcd6f8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931138.9755166} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f6646970-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f/signaling 200 26ms","method":"POST","requestID":"f6646970-782a-11ef-88d4-5fea3f61bb98","responseTime":26,"status":200,"url":"/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"e0eb96ae42efba615045ccd6b6f817f3","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f6637f10-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f? 200 36ms","method":"GET","requestID":"f6637f10-782a-11ef-88d4-5fea3f61bb98","responseTime":36,"status":200,"url":"/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f6692460-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":883,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:38Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2fa66998-b44a-4385-ba13-3824e9adb674","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931138.9895737} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f66a35d0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":883,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.381656,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f6692460-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"f6692460-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"e0eb96ae42efba615045ccd6b6f817f3"} experiment-1 | {"level":"info","message":"POST /experiments? 201 169ms","method":"POST","requestID":"e0eb96ae42efba615045ccd6b6f817f3","responseTime":169,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1288","request_time":"0.177","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e0eb96ae42efba615045ccd6b6f817f3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f6692460-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173/signaling 200 14ms","method":"POST","requestID":"f6692460-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":884,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:38Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOX0.btrrzIlb_FDliYKg8RVy4HEKUXFms7NbsNAFaycECEg","level":"info","message":"auth send jwt","requestID":"0a2b10a6e5e6c5cc4144ec0cbe89b41a"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3b284393-dff9-4dd2-91f1-ed063aa9ad98","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.0010672} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0a2b10a6e5e6c5cc4144ec0cbe89b41a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0a2b10a6e5e6c5cc4144ec0cbe89b41a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":884,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.830504,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f66a35d0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"f66a35d0-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":885,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":885,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.732981,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:39Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f66a35d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f/signaling 200 18ms","method":"POST","requestID":"f66a35d0-782a-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0a2b10a6e5e6c5cc4144ec0cbe89b41a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931139,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOX0.btrrzIlb_FDliYKg8RVy4HEKUXFms7NbsNAFaycECEg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0a2b10a6e5e6c5cc4144ec0cbe89b41a","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f66d6a20-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:36.601805466Z"}]},"request_id":"7775dab5-d6cd-466a-9275-630c39a2cffc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.0115938} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0a2b10a6e5e6c5cc4144ec0cbe89b41a","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":886,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ade35ab7-a704-46bd-a2cc-af6321f65ca6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.0150433} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":886,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.211053,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f66d6a20-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0a2b10a6e5e6c5cc4144ec0cbe89b41a"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f66d6a20-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:05:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0a2b10a6e5e6c5cc4144ec0cbe89b41a"} device-1 | {"level":"info","message":"GET /devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f? 200 15ms","method":"GET","requestID":"0a2b10a6e5e6c5cc4144ec0cbe89b41a","responseTime":15,"status":200,"url":"/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f66d6a20-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173/signaling 200 10ms","method":"POST","requestID":"f66d6a20-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"e0eb96ae42efba615045ccd6b6f817f3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOX0.btrrzIlb_FDliYKg8RVy4HEKUXFms7NbsNAFaycECEg","level":"info","message":"auth send jwt","requestID":"49578633b79c8b2c517616835a2d7c40"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f66f3ee0-782a-11ef-88d4-5fea3f61bb98"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"49578633b79c8b2c517616835a2d7c40","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f66f65f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"49578633b79c8b2c517616835a2d7c40"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":887,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":887,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.810517,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":888,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f66f3ee0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931138,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOH0.jHVxlGOF3m-vy2CfO5Dl3oAxGJDsDyOHcio3dUVnerE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f66f3ee0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":888,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.992433,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f66f65f0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931138,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOH0.jHVxlGOF3m-vy2CfO5Dl3oAxGJDsDyOHcio3dUVnerE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f66f65f0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:36.601805466Z"}]},"request_id":"7b0d2426-91d2-4b63-9dd5-ccaa754c3178","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.0319898} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:36.654366190Z"}]},"request_id":"59ed8317-50a8-4870-93be-cbe81b4ca506","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.0327818} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f66f3ee0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:59846","level":"info","msg":"Received request.","req_id":889,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"client_addr":"127.0.0.1:59846","level":"info","msg":"Sent response.","req_id":889,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.948861,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f66f65f0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"49578633b79c8b2c517616835a2d7c40","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931139,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOX0.btrrzIlb_FDliYKg8RVy4HEKUXFms7NbsNAFaycECEg"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"49578633b79c8b2c517616835a2d7c40","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f66f3ee0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f? 200 17ms","method":"GET","requestID":"f66f3ee0-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:36.654366190Z"}]},"request_id":"25ddf155-74f0-467e-bb08-711cd34bf6af","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.039195} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f66f65f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173? 200 17ms","method":"GET","requestID":"f66f65f0-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"49578633b79c8b2c517616835a2d7c40","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196"},"level":"info","message":"Building connection plan","requestID":"e0eb96ae42efba615045ccd6b6f817f3"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"4d1c6b0d-5187-489e-95b7-26680bfeccc0"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"3d8bdc10-9571-472d-aba2-e8b2a2ea30e4"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"7218f719-7352-4478-8e5c-25e1a7245b50"}]},"level":"info","message":"Built pairwise service configurations","requestID":"e0eb96ae42efba615045ccd6b6f817f3"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"49578633b79c8b2c517616835a2d7c40"} gateway-1 | {"time_local":"21/Sep/2024:15:05:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"49578633b79c8b2c517616835a2d7c40"} device-1 | {"level":"info","message":"GET /devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173? 200 18ms","method":"GET","requestID":"49578633b79c8b2c517616835a2d7c40","responseTime":18,"status":200,"url":"/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173?"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"f6724c20-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"f6724c20-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"POST /rooms 201 2ms","method":"POST","requestID":"f6724c20-782a-11ef-938d-0b888d58857d","responseTime":2,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/a70f7b54-2e38-453a-99ae-84d3d9a50dec?id=91700ab5-313b-47c6-8d3c-06271d8f629e","ws://localhost/rooms/a70f7b54-2e38-453a-99ae-84d3d9a50dec?id=773322d8-d10e-4912-a58e-8e48473d09ea"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"e0eb96ae42efba615045ccd6b6f817f3"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"f672e860-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":890,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":890,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.953578,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f672e860-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931138,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOH0.jHVxlGOF3m-vy2CfO5Dl3oAxGJDsDyOHcio3dUVnerE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f672e860-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"839f165f-bd8d-40c2-9247-85276e985613","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.0583665} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eb1732ac-392c-400c-a013-89101a531f81","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.0585127} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"f672e860-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"f672e860-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"f672e860-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/38efda03-ec17-4650-aa84-98cbe745c713'","requestID":"f672e860-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/38efda03-ec17-4650-aa84-98cbe745c713'","requestID":"f672e860-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"f672e860-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 26ms","method":"POST","requestID":"f672e860-782a-11ef-88d4-5fea3f61bb98","responseTime":26,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"f672e860-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/38efda03-ec17-4650-aa84-98cbe745c713' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"38efda03-ec17-4650-aa84-98cbe745c713","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"f678dbd0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"773322d8-d10e-4912-a58e-8e48473d09ea\" in room \"http://localhost/rooms/a70f7b54-2e38-453a-99ae-84d3d9a50dec\"","requestID":"f678dbd0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"f678dbd0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"f67902e0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"91700ab5-313b-47c6-8d3c-06271d8f629e\" in room \"http://localhost/rooms/a70f7b54-2e38-453a-99ae-84d3d9a50dec\"","requestID":"f67902e0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"f67902e0-782a-11ef-938d-0b888d58857d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3a601c5830a513d375c6bae6fc50e297","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3a601c5830a513d375c6bae6fc50e297","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"773322d8-d10e-4912-a58e-8e48473d09ea\" in room \"http://localhost/rooms/a70f7b54-2e38-453a-99ae-84d3d9a50dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"773322d8-d10e-4912-a58e-8e48473d09ea\" in room \"http://localhost/rooms/a70f7b54-2e38-453a-99ae-84d3d9a50dec\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"773322d8-d10e-4912-a58e-8e48473d09ea\" in room \"http://localhost/rooms/a70f7b54-2e38-453a-99ae-84d3d9a50dec\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"773322d8-d10e-4912-a58e-8e48473d09ea\" in room \"http://localhost/rooms/a70f7b54-2e38-453a-99ae-84d3d9a50dec\""} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/38efda03-ec17-4650-aa84-98cbe745c713"}}},"level":"info","message":"received a callback","requestID":"3a601c5830a513d375c6bae6fc50e297"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"3a601c5830a513d375c6bae6fc50e297","responseTime":6,"status":200,"url":"/callbacks/experiment"} device-1 | {"data":{"peerconnection":"38efda03-ec17-4650-aa84-98cbe745c713","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"21/Sep/2024:15:05:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"3a601c5830a513d375c6bae6fc50e297"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"e0eb96ae42efba615045ccd6b6f817f3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f67b9af0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":891,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bed8969f-9a46-47f5-8851-587ab6056e92","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.108435} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":891,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.765172,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f67b9af0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f67b9af0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"data":{"peerconnection":"38efda03-ec17-4650-aa84-98cbe745c713","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f67b9af0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f/signaling 200 13ms","method":"POST","requestID":"f67b9af0-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f67de4e0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":892,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"72c6d485-eabb-419c-b9a6-b7f9f463bdf2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.1228228} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":892,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.284214,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f67de4e0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f67de4e0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/38efda03-ec17-4650-aa84-98cbe745c713' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"38efda03-ec17-4650-aa84-98cbe745c713","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f67de4e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173/signaling 200 13ms","method":"POST","requestID":"f67de4e0-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d020bd8043770ef47da890e3801f4c5e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d020bd8043770ef47da890e3801f4c5e","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/38efda03-ec17-4650-aa84-98cbe745c713"}}},"level":"info","message":"received a callback","requestID":"d020bd8043770ef47da890e3801f4c5e"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"f680f220-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":893,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F38efda03-ec17-4650-aa84-98cbe745c713","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4987c603-52a7-4983-a45f-93253ee22a99","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.143953} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":893,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.031681,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/38efda03-ec17-4650-aa84-98cbe745c713","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f680f220-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/38efda03-ec17-4650-aa84-98cbe745c713","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f680f220-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"f680f220-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/38efda03-ec17-4650-aa84-98cbe745c713 200 12ms","method":"GET","requestID":"f680f220-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/peerconnections/38efda03-ec17-4650-aa84-98cbe745c713"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 29ms","method":"POST","requestID":"d020bd8043770ef47da890e3801f4c5e","responseTime":29,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.033","http_referrer":"","http_user_agent":"node-fetch","requestID":"d020bd8043770ef47da890e3801f4c5e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f684e9c0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":894,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b6a85b65-05bb-448d-bdc4-e0c983207980","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.169191} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":894,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.398364,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f684e9c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f684e9c0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f684e9c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f/signaling 200 10ms","method":"POST","requestID":"f684e9c0-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f6869770-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":895,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8af25e38-2551-4085-88d4-3ff920df0598","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.180743} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":895,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.500905,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f6869770-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f6869770-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f6869770-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173/signaling 200 10ms","method":"POST","requestID":"f6869770-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOX0.btrrzIlb_FDliYKg8RVy4HEKUXFms7NbsNAFaycECEg","level":"info","message":"auth send jwt","requestID":"39256c3015c8f060ac2e4710a1bede03"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"39256c3015c8f060ac2e4710a1bede03","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196","requestID":"39256c3015c8f060ac2e4710a1bede03"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":896,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":896,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.530638,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"39256c3015c8f060ac2e4710a1bede03","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931139,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOX0.btrrzIlb_FDliYKg8RVy4HEKUXFms7NbsNAFaycECEg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"39256c3015c8f060ac2e4710a1bede03","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196","requestID":"39256c3015c8f060ac2e4710a1bede03"} experiment-1 | {"level":"info","message":"GET /experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196 200 12ms","method":"GET","requestID":"39256c3015c8f060ac2e4710a1bede03","responseTime":12,"status":200,"url":"/experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196"} gateway-1 | {"time_local":"21/Sep/2024:15:05:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196 HTTP/1.1","status": "200","body_bytes_sent":"1361","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"39256c3015c8f060ac2e4710a1bede03"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOX0.btrrzIlb_FDliYKg8RVy4HEKUXFms7NbsNAFaycECEg","level":"info","message":"auth send jwt","requestID":"b05ebd662962866e223d2e5abc6330ad"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b05ebd662962866e223d2e5abc6330ad","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196","requestID":"b05ebd662962866e223d2e5abc6330ad"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":897,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":897,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.659374,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b05ebd662962866e223d2e5abc6330ad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931139,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOX0.btrrzIlb_FDliYKg8RVy4HEKUXFms7NbsNAFaycECEg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b05ebd662962866e223d2e5abc6330ad","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196"},"level":"info","message":"Attempting to finish experiment","requestID":"b05ebd662962866e223d2e5abc6330ad"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"f68e5fa0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":898,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":898,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.821584,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/38efda03-ec17-4650-aa84-98cbe745c713","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f68e5fa0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/38efda03-ec17-4650-aa84-98cbe745c713","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931139,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOX0.btrrzIlb_FDliYKg8RVy4HEKUXFms7NbsNAFaycECEg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f68e5fa0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/38efda03-ec17-4650-aa84-98cbe745c713","device":"cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/38efda03-ec17-4650-aa84-98cbe745c713","device":"cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/38efda03-ec17-4650-aa84-98cbe745c713' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/38efda03-ec17-4650-aa84-98cbe745c713' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"38efda03-ec17-4650-aa84-98cbe745c713","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"21/Sep/2024:15:05:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/a70f7b54-2e38-453a-99ae-84d3d9a50dec?id=91700ab5-313b-47c6-8d3c-06271d8f629e HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.157","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4177ccf1bf166bae90f0bf8771e66b39"} gateway-1 | {"time_local":"21/Sep/2024:15:05:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/a70f7b54-2e38-453a-99ae-84d3d9a50dec?id=773322d8-d10e-4912-a58e-8e48473d09ea HTTP/1.1","status": "101","body_bytes_sent":"438","request_time":"0.158","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6d01a1dc0d9c930f0103112ff2818044"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"91700ab5-313b-47c6-8d3c-06271d8f629e\" in room \"http://localhost/rooms/a70f7b54-2e38-453a-99ae-84d3d9a50dec\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"91700ab5-313b-47c6-8d3c-06271d8f629e\" from room \"http://localhost/rooms/a70f7b54-2e38-453a-99ae-84d3d9a50dec\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"773322d8-d10e-4912-a58e-8e48473d09ea\" in room \"http://localhost/rooms/a70f7b54-2e38-453a-99ae-84d3d9a50dec\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"773322d8-d10e-4912-a58e-8e48473d09ea\" from room \"http://localhost/rooms/a70f7b54-2e38-453a-99ae-84d3d9a50dec\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ea28daedaf27fdf349c4da7dd51cf3d6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F38efda03-ec17-4650-aa84-98cbe745c713': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F38efda03-ec17-4650-aa84-98cbe745c713","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"6c9c4f66-2de4-433f-b7ab-323f13e509ca","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.2444127} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ea28daedaf27fdf349c4da7dd51cf3d6","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a7a578f6-71d8-4342-a8e4-308c004f9666","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.2446675} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6b70b0073ae5b31f56a7988a649b5ae1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/38efda03-ec17-4650-aa84-98cbe745c713"}}},"level":"info","message":"received a callback","requestID":"ea28daedaf27fdf349c4da7dd51cf3d6"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6b70b0073ae5b31f56a7988a649b5ae1","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/38efda03-ec17-4650-aa84-98cbe745c713"}}},"level":"info","message":"received a callback","requestID":"6b70b0073ae5b31f56a7988a649b5ae1"} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"f68e5fa0-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"38efda03-ec17-4650-aa84-98cbe745c713","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"f68e5fa0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/38efda03-ec17-4650-aa84-98cbe745c713 204 39ms","method":"DELETE","requestID":"f68e5fa0-782a-11ef-88d4-5fea3f61bb98","responseTime":39,"status":204,"url":"/peerconnections/38efda03-ec17-4650-aa84-98cbe745c713"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196"},"level":"info","message":"Successfully finished experiment","requestID":"b05ebd662962866e223d2e5abc6330ad"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f6973940-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":899,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"799621fc-b891-4c4f-8725-22e76f04d7aa","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.2898514} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":899,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.136635,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f6973940-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f6973940-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f6973940-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f/signaling 200 11ms","method":"POST","requestID":"f6973940-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa268fa31-5dd5-45d2-a96f-15dc379e3196': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa268fa31-5dd5-45d2-a96f-15dc379e3196","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"73bb7021-fff1-427c-81f8-05be2cf0b1ad","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.297263} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8a8c40f4-4c81-4fda-b9a0-f1d96a56976a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.2976708} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f6995c20-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"b05ebd662962866e223d2e5abc6330ad","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":900,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"81b1aedf-52b2-42b5-ba41-f490f6ea329f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.3033514} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":900,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.195512,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f6995c20-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f6995c20-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f6995c20-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173/signaling 200 11ms","method":"POST","requestID":"f6995c20-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196","requestID":"b05ebd662962866e223d2e5abc6330ad"} gateway-1 | {"time_local":"21/Sep/2024:15:05:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.150","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b05ebd662962866e223d2e5abc6330ad"} experiment-1 | {"level":"info","message":"DELETE /experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196 204 147ms","method":"DELETE","requestID":"b05ebd662962866e223d2e5abc6330ad","responseTime":147,"status":204,"url":"/experiments/a268fa31-5dd5-45d2-a96f-15dc379e3196"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"ea28daedaf27fdf349c4da7dd51cf3d6","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.125","http_referrer":"","http_user_agent":"node-fetch","requestID":"ea28daedaf27fdf349c4da7dd51cf3d6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"6b70b0073ae5b31f56a7988a649b5ae1","responseTime":121,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"6b70b0073ae5b31f56a7988a649b5ae1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOX0.btrrzIlb_FDliYKg8RVy4HEKUXFms7NbsNAFaycECEg","level":"info","message":"auth send jwt","requestID":"0e9b00f515835a53f1b4a12e3190742b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0e9b00f515835a53f1b4a12e3190742b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0e9b00f515835a53f1b4a12e3190742b"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":901,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":901,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.907232,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0e9b00f515835a53f1b4a12e3190742b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931139,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOX0.btrrzIlb_FDliYKg8RVy4HEKUXFms7NbsNAFaycECEg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0e9b00f515835a53f1b4a12e3190742b","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:05:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1784","request_time":"0.707","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"22f4abf5f3ffb03287e7ed58ce3ee17c"} gateway-1 | {"time_local":"21/Sep/2024:15:05:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1781","request_time":"0.720","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ed2e946d7794ec44d390e85a0dc6fd07"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/cd3a9b94-edca-49c1-b4aa-cdf55f63fc1f' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/cbd33f7a-2ee7-4f8a-a7ab-a9c618cdf173' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe35cf70e-ff66-440d-ab3b-9b44e19241f2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0506e320-a234-498b-a0f0-99149e675f96","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.3970184} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0e9b00f515835a53f1b4a12e3190742b","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c90885ea-b798-40aa-9cc1-2eadc2480888","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.4022167} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"0e9b00f515835a53f1b4a12e3190742b","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe35cf70e-ff66-440d-ab3b-9b44e19241f2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"de2581f6-7ba0-47b6-985d-5fdaa9170677","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.4129403} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8947dec7-1d8c-43a0-b1ef-cc8fab30dc8c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.4130728} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"0e9b00f515835a53f1b4a12e3190742b","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe35cf70e-ff66-440d-ab3b-9b44e19241f2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe35cf70e-ff66-440d-ab3b-9b44e19241f2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:39.412916140Z"}]},"request_id":"8821e46c-fae5-4b55-9565-e60b46ef4f57","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.4171624} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0e9b00f515835a53f1b4a12e3190742b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0e9b00f515835a53f1b4a12e3190742b"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"0e9b00f515835a53f1b4a12e3190742b","responseTime":48,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0e9b00f515835a53f1b4a12e3190742b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOX0.btrrzIlb_FDliYKg8RVy4HEKUXFms7NbsNAFaycECEg","level":"info","message":"auth send jwt","requestID":"5013f85470ac0c7616818ffdbf7831b3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5013f85470ac0c7616818ffdbf7831b3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"5013f85470ac0c7616818ffdbf7831b3"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":902,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":902,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.873174,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"5013f85470ac0c7616818ffdbf7831b3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931139,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTEzOX0.btrrzIlb_FDliYKg8RVy4HEKUXFms7NbsNAFaycECEg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5013f85470ac0c7616818ffdbf7831b3","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef142ae7-c7b4-4f4e-b2ad-642d9401a934","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"afe6c6fe-1886-4e06-b536-186808f5fe91","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.4408598} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5013f85470ac0c7616818ffdbf7831b3","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e00dc40f-7405-478f-a3af-f0998f43be68","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.4452991} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"5013f85470ac0c7616818ffdbf7831b3","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef142ae7-c7b4-4f4e-b2ad-642d9401a934","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"0eb36e75-2608-4b5d-a747-470936d79044","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.4543314} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c4f94e9d-9e71-4b78-b1b9-6a9706abb5da","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.4545643} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"5013f85470ac0c7616818ffdbf7831b3","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef142ae7-c7b4-4f4e-b2ad-642d9401a934","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef142ae7-c7b4-4f4e-b2ad-642d9401a934","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:39.454304467Z"}]},"request_id":"a4a1ede3-172b-4a87-a6b1-f09a3185fe06","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931139.4578912} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5013f85470ac0c7616818ffdbf7831b3","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5013f85470ac0c7616818ffdbf7831b3"} device-1 | {"level":"info","message":"POST /devices? 201 34ms","method":"POST","requestID":"5013f85470ac0c7616818ffdbf7831b3","responseTime":34,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.039","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5013f85470ac0c7616818ffdbf7831b3"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"59189dbf0d434d859d676aa5fe9fba0d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"59189dbf0d434d859d676aa5fe9fba0d","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"59189dbf0d434d859d676aa5fe9fba0d"} device-1 | {"level":"info","message":"OPTIONS /devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934/websocket 200 1ms","method":"OPTIONS","requestID":"59189dbf0d434d859d676aa5fe9fba0d","responseTime":1,"status":200,"url":"/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA","level":"info","message":"auth send jwt","requestID":"843f9f3060a70fbd95841cc31331e477"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"843f9f3060a70fbd95841cc31331e477","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"843f9f3060a70fbd95841cc31331e477"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":903,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":903,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.053616,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"843f9f3060a70fbd95841cc31331e477","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931141,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"843f9f3060a70fbd95841cc31331e477","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2d5bf87648d7e9dd5abfbc0914ffeac6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2d5bf87648d7e9dd5abfbc0914ffeac6","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2d5bf87648d7e9dd5abfbc0914ffeac6"} device-1 | {"level":"info","message":"OPTIONS /devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2/websocket 200 1ms","method":"OPTIONS","requestID":"2d5bf87648d7e9dd5abfbc0914ffeac6","responseTime":1,"status":200,"url":"/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"843f9f3060a70fbd95841cc31331e477"} gateway-1 | {"time_local":"21/Sep/2024:15:05:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.030","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"843f9f3060a70fbd95841cc31331e477"} device-1 | {"level":"info","message":"POST /devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934/websocket 200 23ms","method":"POST","requestID":"843f9f3060a70fbd95841cc31331e477","responseTime":23,"status":200,"url":"/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA","level":"info","message":"auth send jwt","requestID":"b68bea44ff8909f7edf19df4f007385a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b68bea44ff8909f7edf19df4f007385a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b68bea44ff8909f7edf19df4f007385a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":904,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":904,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.252565,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b68bea44ff8909f7edf19df4f007385a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931141,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b68bea44ff8909f7edf19df4f007385a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b68bea44ff8909f7edf19df4f007385a"} device-1 | {"level":"info","message":"POST /devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2/websocket 200 14ms","method":"POST","requestID":"b68bea44ff8909f7edf19df4f007385a","responseTime":14,"status":200,"url":"/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:05:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.019","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b68bea44ff8909f7edf19df4f007385a"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"65eb3b95986b54c673ed38da1ce17afd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"65eb3b95986b54c673ed38da1ce17afd","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"65eb3b95986b54c673ed38da1ce17afd"} device-1 | {"level":"info","message":"OPTIONS /devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934? 200 1ms","method":"OPTIONS","requestID":"65eb3b95986b54c673ed38da1ce17afd","responseTime":1,"status":200,"url":"/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"40ccb5e289a0150af9e36b2b85d663a8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"40ccb5e289a0150af9e36b2b85d663a8","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"40ccb5e289a0150af9e36b2b85d663a8"} device-1 | {"level":"info","message":"OPTIONS /devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2? 200 1ms","method":"OPTIONS","requestID":"40ccb5e289a0150af9e36b2b85d663a8","responseTime":1,"status":200,"url":"/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA","level":"info","message":"auth send jwt","requestID":"cd28a00927683019f9c3ccc7959a9d8f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"cd28a00927683019f9c3ccc7959a9d8f","responseTime":5,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA","level":"info","message":"auth send jwt","requestID":"7a329844d47d5fe3f531e31417345760"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7a329844d47d5fe3f531e31417345760","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"cd28a00927683019f9c3ccc7959a9d8f"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"7a329844d47d5fe3f531e31417345760"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":905,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":905,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.607791,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":906,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cd28a00927683019f9c3ccc7959a9d8f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931141,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cd28a00927683019f9c3ccc7959a9d8f","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":906,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.652456,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"7a329844d47d5fe3f531e31417345760","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931141,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7a329844d47d5fe3f531e31417345760","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef142ae7-c7b4-4f4e-b2ad-642d9401a934","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef142ae7-c7b4-4f4e-b2ad-642d9401a934","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:39.454304467Z"}]},"request_id":"29815be2-8495-4798-9bda-dee2444a169c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.5078785} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cd28a00927683019f9c3ccc7959a9d8f","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe35cf70e-ff66-440d-ab3b-9b44e19241f2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe35cf70e-ff66-440d-ab3b-9b44e19241f2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:39.412916140Z"}]},"request_id":"af71c0bd-e3fd-4a7d-8eaf-594ca4b7aac3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.5085073} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7a329844d47d5fe3f531e31417345760","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"664209ef-be63-494a-ba83-62df124fdae7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.5126588} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"cd28a00927683019f9c3ccc7959a9d8f","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"16e153b3-49c0-4d11-b6bc-bfeffc2af0de","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.5153358} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"7a329844d47d5fe3f531e31417345760","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe35cf70e-ff66-440d-ab3b-9b44e19241f2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe35cf70e-ff66-440d-ab3b-9b44e19241f2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:39.412916140Z"}]},"request_id":"93854cf3-b306-420d-95db-79198a50be40","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.519665} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7a329844d47d5fe3f531e31417345760","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"7a329844d47d5fe3f531e31417345760"} gateway-1 | {"time_local":"21/Sep/2024:15:05:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.028","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"7a329844d47d5fe3f531e31417345760"} device-1 | {"level":"info","message":"PATCH /devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2? 200 23ms","method":"PATCH","requestID":"7a329844d47d5fe3f531e31417345760","responseTime":23,"status":200,"url":"/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef142ae7-c7b4-4f4e-b2ad-642d9401a934","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef142ae7-c7b4-4f4e-b2ad-642d9401a934","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:39.454304467Z"}]},"request_id":"1f06a39b-d67d-4058-b351-665f76d48382","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.5285144} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cd28a00927683019f9c3ccc7959a9d8f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"cd28a00927683019f9c3ccc7959a9d8f"} gateway-1 | {"time_local":"21/Sep/2024:15:05:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.039","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"cd28a00927683019f9c3ccc7959a9d8f"} device-1 | {"level":"info","message":"PATCH /devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934? 200 33ms","method":"PATCH","requestID":"cd28a00927683019f9c3ccc7959a9d8f","responseTime":33,"status":200,"url":"/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA","level":"info","message":"auth send jwt","requestID":"09b1a12586182237c3435db74efb0218"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"09b1a12586182237c3435db74efb0218","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"09b1a12586182237c3435db74efb0218"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":907,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":907,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.028945,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"09b1a12586182237c3435db74efb0218","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931141,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"09b1a12586182237c3435db74efb0218","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe35cf70e-ff66-440d-ab3b-9b44e19241f2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe35cf70e-ff66-440d-ab3b-9b44e19241f2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:39.412916140Z"}]},"request_id":"082e96b5-75b1-422a-8a60-b96db5846cbf","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.5476553} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"09b1a12586182237c3435db74efb0218","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"09b1a12586182237c3435db74efb0218"} gateway-1 | {"time_local":"21/Sep/2024:15:05:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"09b1a12586182237c3435db74efb0218"} device-1 | {"level":"info","message":"GET /devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2? 200 12ms","method":"GET","requestID":"09b1a12586182237c3435db74efb0218","responseTime":12,"status":200,"url":"/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA","level":"info","message":"auth send jwt","requestID":"b2cc773692e8888f9e44bb1f500d32fd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b2cc773692e8888f9e44bb1f500d32fd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b2cc773692e8888f9e44bb1f500d32fd"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":908,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":908,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.470849,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b2cc773692e8888f9e44bb1f500d32fd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931141,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b2cc773692e8888f9e44bb1f500d32fd","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef142ae7-c7b4-4f4e-b2ad-642d9401a934","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef142ae7-c7b4-4f4e-b2ad-642d9401a934","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:39.454304467Z"}]},"request_id":"c50c95e6-84ef-4ea3-b091-9d8074920762","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.5649571} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b2cc773692e8888f9e44bb1f500d32fd","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b2cc773692e8888f9e44bb1f500d32fd"} device-1 | {"level":"info","message":"GET /devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934? 200 13ms","method":"GET","requestID":"b2cc773692e8888f9e44bb1f500d32fd","responseTime":13,"status":200,"url":"/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b2cc773692e8888f9e44bb1f500d32fd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA","level":"info","message":"auth send jwt","requestID":"240f563c737e5bd8e85065e6efb3763a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"240f563c737e5bd8e85065e6efb3763a","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"240f563c737e5bd8e85065e6efb3763a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":909,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":909,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.718527,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"240f563c737e5bd8e85065e6efb3763a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931141,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"240f563c737e5bd8e85065e6efb3763a","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd"},"level":"info","message":"Attempting to run experiment","requestID":"240f563c737e5bd8e85065e6efb3763a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd"},"level":"info","message":"Attempting to book experiment","requestID":"240f563c737e5bd8e85065e6efb3763a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd"},"level":"info","message":"Successfully booked experiment","requestID":"240f563c737e5bd8e85065e6efb3763a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f7fa72c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f7fac0e0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":910,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":910,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.598125,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":911,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f7fa72c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931141,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f7fa72c0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":911,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.826012,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f7fac0e0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931141,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f7fac0e0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe35cf70e-ff66-440d-ab3b-9b44e19241f2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe35cf70e-ff66-440d-ab3b-9b44e19241f2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:39.412916140Z"}]},"request_id":"e5ab7771-dbce-4f13-ad64-0483f6604634","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.621916} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f7fa72c0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef142ae7-c7b4-4f4e-b2ad-642d9401a934","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef142ae7-c7b4-4f4e-b2ad-642d9401a934","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:39.454304467Z"}]},"request_id":"de36236f-206b-4ef5-8229-3c58117fc75b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.6228354} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f7fac0e0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f7fa72c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2? 200 15ms","method":"GET","requestID":"f7fa72c0-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f7fac0e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934? 200 14ms","method":"GET","requestID":"f7fac0e0-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd"},"level":"info","message":"Setting up experiment","requestID":"240f563c737e5bd8e85065e6efb3763a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"240f563c737e5bd8e85065e6efb3763a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd"},"level":"info","message":"Successfully locked booking for experiment","requestID":"240f563c737e5bd8e85065e6efb3763a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"240f563c737e5bd8e85065e6efb3763a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"240f563c737e5bd8e85065e6efb3763a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd"},"level":"info","message":"Attempting to update booking for experiment","requestID":"240f563c737e5bd8e85065e6efb3763a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd"},"level":"info","message":"Successfully updated booking for experiment","requestID":"240f563c737e5bd8e85065e6efb3763a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd"},"level":"info","message":"Successfully set up experiment","requestID":"240f563c737e5bd8e85065e6efb3763a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f801c5c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f801ecd0-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd"},"level":"info","message":"Successfully running experiment","requestID":"240f563c737e5bd8e85065e6efb3763a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f8023af0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":912,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":912,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.931307,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f801c5c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931141,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f801c5c0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":913,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":913,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.858989,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"client_addr":"127.0.0.1:59846","level":"info","msg":"Received request.","req_id":914,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f801ecd0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931141,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f801ecd0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe35cf70e-ff66-440d-ab3b-9b44e19241f2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4d930e2c-a09e-4337-8b99-51bd2c4a704e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.6713073} authorization-1 | {"client_addr":"127.0.0.1:59846","level":"info","msg":"Sent response.","req_id":914,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.14344,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f8023af0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f8023af0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe35cf70e-ff66-440d-ab3b-9b44e19241f2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe35cf70e-ff66-440d-ab3b-9b44e19241f2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:39.412916140Z"}]},"request_id":"d5cee735-e4aa-49dd-afe8-85f5e524b63a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.672581} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef142ae7-c7b4-4f4e-b2ad-642d9401a934","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef142ae7-c7b4-4f4e-b2ad-642d9401a934","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:39.454304467Z"}]},"request_id":"55e86952-3863-4417-9d2d-8ba7b8ee3fcf","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.6736298} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f801c5c0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f801ecd0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f801c5c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2? 200 20ms","method":"GET","requestID":"f801c5c0-782a-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f8023af0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2/signaling 200 17ms","method":"POST","requestID":"f8023af0-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f801ecd0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934? 200 20ms","method":"GET","requestID":"f801ecd0-782a-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f8052120-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f8056f40-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fff4d6761-b247-4e88-986d-6d675ec4d5fd#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fff4d6761-b247-4e88-986d-6d675ec4d5fd","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"51b897c9-2279-4af7-961d-94beb53d39a8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.685411} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"357aa395-f34a-4502-a1af-495373e0cada","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.685773} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"240f563c737e5bd8e85065e6efb3763a","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef142ae7-c7b4-4f4e-b2ad-642d9401a934","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6c21be34-33c1-4a7a-94e4-9b8419cc3ade","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.6882954} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe35cf70e-ff66-440d-ab3b-9b44e19241f2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7796d15d-60af-4891-be50-ab443fd652d8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.6889005} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":915,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":916,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":915,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.269874,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":916,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":1.950615,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f8052120-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f8052120-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f8056f40-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f8056f40-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"240f563c737e5bd8e85065e6efb3763a"} experiment-1 | {"level":"info","message":"POST /experiments? 201 117ms","method":"POST","requestID":"240f563c737e5bd8e85065e6efb3763a","responseTime":117,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1288","request_time":"0.124","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"240f563c737e5bd8e85065e6efb3763a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f8052120-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934/signaling 200 12ms","method":"POST","requestID":"f8052120-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f8056f40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2/signaling 200 11ms","method":"POST","requestID":"f8056f40-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f8074400-782a-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA","level":"info","message":"auth send jwt","requestID":"20890b2886f93e58cb6e989689c2e857"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"20890b2886f93e58cb6e989689c2e857","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"20890b2886f93e58cb6e989689c2e857"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":917,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":918,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":918,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.630102,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"20890b2886f93e58cb6e989689c2e857","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931141,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"20890b2886f93e58cb6e989689c2e857","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef142ae7-c7b4-4f4e-b2ad-642d9401a934","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a6c02efc-ce81-4125-94ce-25423b1c5eb6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.7017784} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":917,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.627913,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f8074400-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f8074400-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe35cf70e-ff66-440d-ab3b-9b44e19241f2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe35cf70e-ff66-440d-ab3b-9b44e19241f2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:39.412916140Z"}]},"request_id":"cc4566d2-d42d-47cc-8f06-6d4eb5d5d8f5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.7056012} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f8074400-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934/signaling 200 10ms","method":"POST","requestID":"f8074400-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"20890b2886f93e58cb6e989689c2e857","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"240f563c737e5bd8e85065e6efb3763a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f80918c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f8093fd0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"20890b2886f93e58cb6e989689c2e857"} gateway-1 | {"time_local":"21/Sep/2024:15:05:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"20890b2886f93e58cb6e989689c2e857"} device-1 | {"level":"info","message":"GET /devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2? 200 13ms","method":"GET","requestID":"20890b2886f93e58cb6e989689c2e857","responseTime":13,"status":200,"url":"/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":919,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":919,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.846744,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":920,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f80918c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931141,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f80918c0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":920,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.620956,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f8093fd0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931141,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f8093fd0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA","level":"info","message":"auth send jwt","requestID":"d3d65053ffc17da6b3cbb95266682c0b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d3d65053ffc17da6b3cbb95266682c0b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d3d65053ffc17da6b3cbb95266682c0b"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe35cf70e-ff66-440d-ab3b-9b44e19241f2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe35cf70e-ff66-440d-ab3b-9b44e19241f2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:39.412916140Z"}]},"request_id":"7d27784d-323b-49b1-bacb-6959d6662bb3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.7188942} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef142ae7-c7b4-4f4e-b2ad-642d9401a934","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef142ae7-c7b4-4f4e-b2ad-642d9401a934","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:39.454304467Z"}]},"request_id":"94355c3c-a7e8-4d40-bd6a-2903aee2b7f2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.7198167} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f80918c0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f8093fd0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":921,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":921,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.138108,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d3d65053ffc17da6b3cbb95266682c0b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931141,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d3d65053ffc17da6b3cbb95266682c0b","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f80918c0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef142ae7-c7b4-4f4e-b2ad-642d9401a934","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef142ae7-c7b4-4f4e-b2ad-642d9401a934","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:39.454304467Z"}]},"request_id":"366d7b30-7246-4590-b0e1-a5c4a89ca272","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.72802} device-1 | {"level":"info","message":"GET /devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2? 200 20ms","method":"GET","requestID":"f80918c0-782a-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f8093fd0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d3d65053ffc17da6b3cbb95266682c0b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934? 200 20ms","method":"GET","requestID":"f8093fd0-782a-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd"},"level":"info","message":"Building connection plan","requestID":"240f563c737e5bd8e85065e6efb3763a"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"6ed14838-63f7-4454-86f7-21468308e112"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"fd8b0792-6b21-44ff-99d4-e274b85cbbc9"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"7bc01dfb-de80-4f9a-a24a-f8a911914ec0"}]},"level":"info","message":"Built pairwise service configurations","requestID":"240f563c737e5bd8e85065e6efb3763a"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"f80c9b30-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"f80c9b30-782a-11ef-938d-0b888d58857d"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d3d65053ffc17da6b3cbb95266682c0b"} gateway-1 | {"time_local":"21/Sep/2024:15:05:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d3d65053ffc17da6b3cbb95266682c0b"} device-1 | {"level":"info","message":"GET /devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934? 200 15ms","method":"GET","requestID":"d3d65053ffc17da6b3cbb95266682c0b","responseTime":15,"status":200,"url":"/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934?"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"f80c9b30-782a-11ef-938d-0b888d58857d","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/6cc26b14-bc46-4b63-a835-f50e8df495e4?id=ce6cf783-72cf-4583-a41c-19d8623ba922","ws://localhost/rooms/6cc26b14-bc46-4b63-a835-f50e8df495e4?id=31158b6e-f41f-4f5a-a026-d311461e9bd9"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"240f563c737e5bd8e85065e6efb3763a"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"f80d3770-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":922,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":922,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.672496,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f80d3770-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931141,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f80d3770-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"4e47155d-4291-4071-89bc-f0d022a21a0a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.7462857} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3cdec423-b6c7-411a-bf4c-214809774bea","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.7466342} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"f80d3770-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"f80d3770-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"f80d3770-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/08430b81-66fb-499c-bd0b-6db250d59352'","requestID":"f80d3770-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/08430b81-66fb-499c-bd0b-6db250d59352'","requestID":"f80d3770-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"f80d3770-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 24ms","method":"POST","requestID":"f80d3770-782a-11ef-88d4-5fea3f61bb98","responseTime":24,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"f80d3770-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/08430b81-66fb-499c-bd0b-6db250d59352' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"08430b81-66fb-499c-bd0b-6db250d59352","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"f8128ea0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ce6cf783-72cf-4583-a41c-19d8623ba922\" in room \"http://localhost/rooms/6cc26b14-bc46-4b63-a835-f50e8df495e4\"","requestID":"f8128ea0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"f8128ea0-782a-11ef-938d-0b888d58857d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"76c38fa00e3375f25727c65b408b000d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"f812dcc0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"31158b6e-f41f-4f5a-a026-d311461e9bd9\" in room \"http://localhost/rooms/6cc26b14-bc46-4b63-a835-f50e8df495e4\"","requestID":"f812dcc0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"f812dcc0-782a-11ef-938d-0b888d58857d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"76c38fa00e3375f25727c65b408b000d","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/08430b81-66fb-499c-bd0b-6db250d59352"}}},"level":"info","message":"received a callback","requestID":"76c38fa00e3375f25727c65b408b000d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ce6cf783-72cf-4583-a41c-19d8623ba922\" in room \"http://localhost/rooms/6cc26b14-bc46-4b63-a835-f50e8df495e4\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ce6cf783-72cf-4583-a41c-19d8623ba922\" in room \"http://localhost/rooms/6cc26b14-bc46-4b63-a835-f50e8df495e4\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ce6cf783-72cf-4583-a41c-19d8623ba922\" in room \"http://localhost/rooms/6cc26b14-bc46-4b63-a835-f50e8df495e4\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ce6cf783-72cf-4583-a41c-19d8623ba922\" in room \"http://localhost/rooms/6cc26b14-bc46-4b63-a835-f50e8df495e4\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ce6cf783-72cf-4583-a41c-19d8623ba922\" in room \"http://localhost/rooms/6cc26b14-bc46-4b63-a835-f50e8df495e4\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ce6cf783-72cf-4583-a41c-19d8623ba922\" in room \"http://localhost/rooms/6cc26b14-bc46-4b63-a835-f50e8df495e4\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ce6cf783-72cf-4583-a41c-19d8623ba922\" in room \"http://localhost/rooms/6cc26b14-bc46-4b63-a835-f50e8df495e4\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ce6cf783-72cf-4583-a41c-19d8623ba922\" in room \"http://localhost/rooms/6cc26b14-bc46-4b63-a835-f50e8df495e4\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"76c38fa00e3375f25727c65b408b000d","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"76c38fa00e3375f25727c65b408b000d"} device-1 | {"data":{"peerconnection":"08430b81-66fb-499c-bd0b-6db250d59352","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"240f563c737e5bd8e85065e6efb3763a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f8172280-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":923,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} device-1 | {"data":{"peerconnection":"08430b81-66fb-499c-bd0b-6db250d59352","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe35cf70e-ff66-440d-ab3b-9b44e19241f2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4a235e9b-bf74-43e7-bf28-90d8abcd6dce","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.8048513} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":923,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.373857,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f8172280-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f8172280-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/08430b81-66fb-499c-bd0b-6db250d59352' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"08430b81-66fb-499c-bd0b-6db250d59352","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f8172280-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2/signaling 200 15ms","method":"POST","requestID":"f8172280-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9608a2609692f76e2bda73a440c7e74a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9608a2609692f76e2bda73a440c7e74a","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f819ba90-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/08430b81-66fb-499c-bd0b-6db250d59352"}}},"level":"info","message":"received a callback","requestID":"9608a2609692f76e2bda73a440c7e74a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":924,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef142ae7-c7b4-4f4e-b2ad-642d9401a934","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b462b916-21c3-43ff-939c-a4863a858335","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.8220043} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":924,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.298784,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"f81a7de0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f819ba90-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f819ba90-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":925,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f819ba90-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934/signaling 200 9ms","method":"POST","requestID":"f819ba90-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F08430b81-66fb-499c-bd0b-6db250d59352","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5ad1c5e0-99fc-437d-b22f-569bdc820fe5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.8270247} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":925,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.548099,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/08430b81-66fb-499c-bd0b-6db250d59352","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f81a7de0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/08430b81-66fb-499c-bd0b-6db250d59352","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f81a7de0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"f81a7de0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/08430b81-66fb-499c-bd0b-6db250d59352 200 8ms","method":"GET","requestID":"f81a7de0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/peerconnections/08430b81-66fb-499c-bd0b-6db250d59352"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 24ms","method":"POST","requestID":"9608a2609692f76e2bda73a440c7e74a","responseTime":24,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch","requestID":"9608a2609692f76e2bda73a440c7e74a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f81db230-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":926,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef142ae7-c7b4-4f4e-b2ad-642d9401a934","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e6001516-29ac-4804-89f6-91beed1d496d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.8486936} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":926,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.827424,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f81db230-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f81db230-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f81db230-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934/signaling 200 9ms","method":"POST","requestID":"f81db230-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f81f5fe0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":927,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe35cf70e-ff66-440d-ab3b-9b44e19241f2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f011a3b2-82e0-41ae-aa36-e654937e52fe","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.858466} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":927,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.268902,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f81f5fe0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f81f5fe0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f81f5fe0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2/signaling 200 8ms","method":"POST","requestID":"f81f5fe0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA","level":"info","message":"auth send jwt","requestID":"32cee7a2a8fd0a0930cc8272bf2b28cf"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"32cee7a2a8fd0a0930cc8272bf2b28cf","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd","requestID":"32cee7a2a8fd0a0930cc8272bf2b28cf"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":928,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":928,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.743461,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"32cee7a2a8fd0a0930cc8272bf2b28cf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931141,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"32cee7a2a8fd0a0930cc8272bf2b28cf","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd","requestID":"32cee7a2a8fd0a0930cc8272bf2b28cf"} experiment-1 | {"level":"info","message":"GET /experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd 200 11ms","method":"GET","requestID":"32cee7a2a8fd0a0930cc8272bf2b28cf","responseTime":11,"status":200,"url":"/experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd"} gateway-1 | {"time_local":"21/Sep/2024:15:05:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd HTTP/1.1","status": "200","body_bytes_sent":"1361","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"32cee7a2a8fd0a0930cc8272bf2b28cf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA","level":"info","message":"auth send jwt","requestID":"36b76e672c24f3e0f914aea012d599c5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"36b76e672c24f3e0f914aea012d599c5","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd","requestID":"36b76e672c24f3e0f914aea012d599c5"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":929,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":929,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.320561,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"36b76e672c24f3e0f914aea012d599c5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931141,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"36b76e672c24f3e0f914aea012d599c5","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd"},"level":"info","message":"Attempting to finish experiment","requestID":"36b76e672c24f3e0f914aea012d599c5"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"f8286090-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":930,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":930,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.217321,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/08430b81-66fb-499c-bd0b-6db250d59352","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f8286090-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/08430b81-66fb-499c-bd0b-6db250d59352","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931141,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0MX0.2MrAMilEIHMfqQNSO7C5jgDqU5IWKiFenL4vhSncFEA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f8286090-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/08430b81-66fb-499c-bd0b-6db250d59352","device":"ef142ae7-c7b4-4f4e-b2ad-642d9401a934","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"21/Sep/2024:15:05:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/6cc26b14-bc46-4b63-a835-f50e8df495e4?id=ce6cf783-72cf-4583-a41c-19d8623ba922 HTTP/1.1","status": "101","body_bytes_sent":"874","request_time":"0.159","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"012f86d105011cead0f202f55d142f84"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/08430b81-66fb-499c-bd0b-6db250d59352","device":"e35cf70e-ff66-440d-ab3b-9b44e19241f2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"21/Sep/2024:15:05:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/6cc26b14-bc46-4b63-a835-f50e8df495e4?id=31158b6e-f41f-4f5a-a026-d311461e9bd9 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.159","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9e8fb1b319a1ed4caccd8f8fb7b89c59"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"ce6cf783-72cf-4583-a41c-19d8623ba922\" in room \"http://localhost/rooms/6cc26b14-bc46-4b63-a835-f50e8df495e4\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/08430b81-66fb-499c-bd0b-6db250d59352' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/08430b81-66fb-499c-bd0b-6db250d59352' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"08430b81-66fb-499c-bd0b-6db250d59352","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"ce6cf783-72cf-4583-a41c-19d8623ba922\" from room \"http://localhost/rooms/6cc26b14-bc46-4b63-a835-f50e8df495e4\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"31158b6e-f41f-4f5a-a026-d311461e9bd9\" in room \"http://localhost/rooms/6cc26b14-bc46-4b63-a835-f50e8df495e4\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"31158b6e-f41f-4f5a-a026-d311461e9bd9\" from room \"http://localhost/rooms/6cc26b14-bc46-4b63-a835-f50e8df495e4\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1bba8136427ea32d0d5997b3001e21f1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1bba8136427ea32d0d5997b3001e21f1","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F08430b81-66fb-499c-bd0b-6db250d59352': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F08430b81-66fb-499c-bd0b-6db250d59352","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"a9ccbb3c-4ac8-45c4-a77d-98ba4e402a78","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.932805} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"aeaebee50389d405f6106b7b36c0b5da","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3d216edd-77b9-4b60-a0bf-de075740dba5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.9332554} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/08430b81-66fb-499c-bd0b-6db250d59352"}}},"level":"info","message":"received a callback","requestID":"1bba8136427ea32d0d5997b3001e21f1"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"aeaebee50389d405f6106b7b36c0b5da","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/08430b81-66fb-499c-bd0b-6db250d59352"}}},"level":"info","message":"received a callback","requestID":"aeaebee50389d405f6106b7b36c0b5da"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"f8286090-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"08430b81-66fb-499c-bd0b-6db250d59352","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"f8286090-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/08430b81-66fb-499c-bd0b-6db250d59352 204 36ms","method":"DELETE","requestID":"f8286090-782a-11ef-88d4-5fea3f61bb98","responseTime":36,"status":204,"url":"/peerconnections/08430b81-66fb-499c-bd0b-6db250d59352"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd"},"level":"info","message":"Successfully finished experiment","requestID":"36b76e672c24f3e0f914aea012d599c5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f8309df0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":931,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef142ae7-c7b4-4f4e-b2ad-642d9401a934","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"706d7a20-9565-4dad-b5b0-2a1c9f44e7b2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.9717252} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":931,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.548612,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f8309df0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f8309df0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f8309df0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934/signaling 200 9ms","method":"POST","requestID":"f8309df0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fff4d6761-b247-4e88-986d-6d675ec4d5fd': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fff4d6761-b247-4e88-986d-6d675ec4d5fd","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"d03b5b42-c1e5-4c04-bd72-aa979d4c45c3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.9784777} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f83272b0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d75a1116-85b3-41c7-8b64-701b8a54a22b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.9790452} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"36b76e672c24f3e0f914aea012d599c5","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":932,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe35cf70e-ff66-440d-ab3b-9b44e19241f2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2344a1d0-2063-4f67-b606-109c5c717e67","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931141.9837527} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":932,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.531716,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f83272b0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f83272b0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f83272b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2/signaling 200 9ms","method":"POST","requestID":"f83272b0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd","requestID":"36b76e672c24f3e0f914aea012d599c5"} gateway-1 | {"time_local":"21/Sep/2024:15:05:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.149","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"36b76e672c24f3e0f914aea012d599c5"} experiment-1 | {"level":"info","message":"DELETE /experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd 204 147ms","method":"DELETE","requestID":"36b76e672c24f3e0f914aea012d599c5","responseTime":147,"status":204,"url":"/experiments/ff4d6761-b247-4e88-986d-6d675ec4d5fd"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 118ms","method":"POST","requestID":"1bba8136427ea32d0d5997b3001e21f1","responseTime":118,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.121","http_referrer":"","http_user_agent":"node-fetch","requestID":"1bba8136427ea32d0d5997b3001e21f1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 118ms","method":"POST","requestID":"aeaebee50389d405f6106b7b36c0b5da","responseTime":118,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.123","http_referrer":"","http_user_agent":"node-fetch","requestID":"aeaebee50389d405f6106b7b36c0b5da"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0Mn0.RVRzg-q6SxWPgbGkZQwGa2IF57HyrbKpsHCqydb6SBw","level":"info","message":"auth send jwt","requestID":"22eae3d2c51c0f69bbe660a48650d175"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"22eae3d2c51c0f69bbe660a48650d175","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"22eae3d2c51c0f69bbe660a48650d175"} gateway-1 | {"time_local":"21/Sep/2024:15:05:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1782","request_time":"0.606","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9f58603322b751c5e9c1ebe3b923c05e"} gateway-1 | {"time_local":"21/Sep/2024:15:05:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1783","request_time":"0.594","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2e2c92a612f3f33530f857d4864a388d"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":933,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:42Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":933,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.86652,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:42Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"22eae3d2c51c0f69bbe660a48650d175","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931142,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0Mn0.RVRzg-q6SxWPgbGkZQwGa2IF57HyrbKpsHCqydb6SBw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"22eae3d2c51c0f69bbe660a48650d175","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/ef142ae7-c7b4-4f4e-b2ad-642d9401a934' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe765e16e-e52c-4d5b-bba8-53adf3b1d3b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b9b94573-78f7-4fd2-a186-f558e6a6474c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931142.07975} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"22eae3d2c51c0f69bbe660a48650d175","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/e35cf70e-ff66-440d-ab3b-9b44e19241f2' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"627bc645-1f0b-4185-a98a-c5b1a386ca6b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931142.0837426} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"22eae3d2c51c0f69bbe660a48650d175","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe765e16e-e52c-4d5b-bba8-53adf3b1d3b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"0075ebda-6307-4663-88d1-f50db6ad9a9b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931142.093459} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b58f80b0-2944-4019-bcef-d2c0f67ac849","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931142.0935915} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"22eae3d2c51c0f69bbe660a48650d175","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe765e16e-e52c-4d5b-bba8-53adf3b1d3b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe765e16e-e52c-4d5b-bba8-53adf3b1d3b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:42.093433969Z"}]},"request_id":"03456d44-4d1d-459c-b286-3e6d464d887b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931142.0972476} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"22eae3d2c51c0f69bbe660a48650d175","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"22eae3d2c51c0f69bbe660a48650d175"} gateway-1 | {"time_local":"21/Sep/2024:15:05:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"22eae3d2c51c0f69bbe660a48650d175"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"22eae3d2c51c0f69bbe660a48650d175","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0Mn0.RVRzg-q6SxWPgbGkZQwGa2IF57HyrbKpsHCqydb6SBw","level":"info","message":"auth send jwt","requestID":"4e8bd9a668d2a13198c59aecdfb1f5a7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4e8bd9a668d2a13198c59aecdfb1f5a7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4e8bd9a668d2a13198c59aecdfb1f5a7"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":934,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:42Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":934,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.673528,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:42Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"4e8bd9a668d2a13198c59aecdfb1f5a7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931142,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0Mn0.RVRzg-q6SxWPgbGkZQwGa2IF57HyrbKpsHCqydb6SBw"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"4e8bd9a668d2a13198c59aecdfb1f5a7","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d6526637-e00d-4f0c-82e9-80261c23b329","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931142.1259394} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4e8bd9a668d2a13198c59aecdfb1f5a7","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c6ea9a8d-29d3-4c15-8c5f-05e23401750a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931142.1304066} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"4e8bd9a668d2a13198c59aecdfb1f5a7","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"afd50cad-239b-4fff-98b1-c5629481a1f8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931142.1406746} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4fd277b9-58c4-42b6-b272-565b7bc5d662","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931142.141002} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"4e8bd9a668d2a13198c59aecdfb1f5a7","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:42.140634666Z"}]},"request_id":"e8a5a2d3-183d-4549-8c1c-6cd027aad215","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931142.1445503} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4e8bd9a668d2a13198c59aecdfb1f5a7","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4e8bd9a668d2a13198c59aecdfb1f5a7"} gateway-1 | {"time_local":"21/Sep/2024:15:05:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4e8bd9a668d2a13198c59aecdfb1f5a7"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"4e8bd9a668d2a13198c59aecdfb1f5a7","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0Mn0.RVRzg-q6SxWPgbGkZQwGa2IF57HyrbKpsHCqydb6SBw","level":"info","message":"auth send jwt","requestID":"a873bae579fcdfbffb681797e839fdc4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a873bae579fcdfbffb681797e839fdc4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a873bae579fcdfbffb681797e839fdc4"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":935,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:42Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":935,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.876453,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a873bae579fcdfbffb681797e839fdc4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931142,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0Mn0.RVRzg-q6SxWPgbGkZQwGa2IF57HyrbKpsHCqydb6SBw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a873bae579fcdfbffb681797e839fdc4","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:42.140634666Z"}]},"request_id":"1ddc48f8-4eb3-4812-840b-bf88182660b6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931142.6364336} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a873bae579fcdfbffb681797e839fdc4","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1224bd83-e6ca-4102-acba-d0730b205caf","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931142.6433437} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"a873bae579fcdfbffb681797e839fdc4","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:42.140634666Z"}]},"request_id":"9ca8c25c-8266-4fb1-be39-ba384abaead0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931142.6544979} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a873bae579fcdfbffb681797e839fdc4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a873bae579fcdfbffb681797e839fdc4"} device-1 | {"level":"info","message":"PATCH /devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00 200 34ms","method":"PATCH","requestID":"a873bae579fcdfbffb681797e839fdc4","responseTime":34,"status":200,"url":"/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00"} gateway-1 | {"time_local":"21/Sep/2024:15:05:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.038","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"a873bae579fcdfbffb681797e839fdc4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0Mn0.RVRzg-q6SxWPgbGkZQwGa2IF57HyrbKpsHCqydb6SBw","level":"info","message":"auth send jwt","requestID":"c5a9e80f00282d9d2d1f99d1f7ef73e6"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c5a9e80f00282d9d2d1f99d1f7ef73e6","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c5a9e80f00282d9d2d1f99d1f7ef73e6"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":936,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:42Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":936,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.936835,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c5a9e80f00282d9d2d1f99d1f7ef73e6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931142,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0Mn0.RVRzg-q6SxWPgbGkZQwGa2IF57HyrbKpsHCqydb6SBw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c5a9e80f00282d9d2d1f99d1f7ef73e6","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c5a9e80f00282d9d2d1f99d1f7ef73e6"} device-1 | {"level":"info","message":"POST /devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00/websocket 200 20ms","method":"POST","requestID":"c5a9e80f00282d9d2d1f99d1f7ef73e6","responseTime":20,"status":200,"url":"/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:05:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c5a9e80f00282d9d2d1f99d1f7ef73e6"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2ec7267fb02870b77e5c27e4fbc35725","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2ec7267fb02870b77e5c27e4fbc35725","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2ec7267fb02870b77e5c27e4fbc35725"} device-1 | {"level":"info","message":"OPTIONS /devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3/websocket 200 1ms","method":"OPTIONS","requestID":"2ec7267fb02870b77e5c27e4fbc35725","responseTime":1,"status":200,"url":"/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I","level":"info","message":"auth send jwt","requestID":"93eb72a2398ff2b255a329d356d28831"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"93eb72a2398ff2b255a329d356d28831","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"93eb72a2398ff2b255a329d356d28831"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":937,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":937,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.286146,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"93eb72a2398ff2b255a329d356d28831","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931144,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"93eb72a2398ff2b255a329d356d28831","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"93eb72a2398ff2b255a329d356d28831"} gateway-1 | {"time_local":"21/Sep/2024:15:05:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"93eb72a2398ff2b255a329d356d28831"} device-1 | {"level":"info","message":"POST /devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3/websocket 200 21ms","method":"POST","requestID":"93eb72a2398ff2b255a329d356d28831","responseTime":21,"status":200,"url":"/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c0488b1649ed5917b79dbf2f512e1a11","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c0488b1649ed5917b79dbf2f512e1a11","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c0488b1649ed5917b79dbf2f512e1a11"} device-1 | {"level":"info","message":"OPTIONS /devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3? 200 1ms","method":"OPTIONS","requestID":"c0488b1649ed5917b79dbf2f512e1a11","responseTime":1,"status":200,"url":"/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I","level":"info","message":"auth send jwt","requestID":"ece2f59c75c830a0183498408878f08c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ece2f59c75c830a0183498408878f08c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ece2f59c75c830a0183498408878f08c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":938,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":938,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.169579,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ece2f59c75c830a0183498408878f08c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931144,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ece2f59c75c830a0183498408878f08c","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe765e16e-e52c-4d5b-bba8-53adf3b1d3b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe765e16e-e52c-4d5b-bba8-53adf3b1d3b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:42.093433969Z"}]},"request_id":"395fd9f6-09ee-450d-88ad-7e3563cb8c5c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.2484853} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ece2f59c75c830a0183498408878f08c","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"121fc050-9365-4554-9c7a-483b230cb8fe","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.2558835} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"ece2f59c75c830a0183498408878f08c","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe765e16e-e52c-4d5b-bba8-53adf3b1d3b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe765e16e-e52c-4d5b-bba8-53adf3b1d3b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:42.093433969Z"}]},"request_id":"8d62493f-ff71-4f70-b74d-a4c5c43e4bee","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.2692783} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ece2f59c75c830a0183498408878f08c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ece2f59c75c830a0183498408878f08c"} gateway-1 | {"time_local":"21/Sep/2024:15:05:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.044","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ece2f59c75c830a0183498408878f08c"} device-1 | {"level":"info","message":"PATCH /devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3? 200 38ms","method":"PATCH","requestID":"ece2f59c75c830a0183498408878f08c","responseTime":38,"status":200,"url":"/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I","level":"info","message":"auth send jwt","requestID":"2566ad890858fcd3131cc0df381981d7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2566ad890858fcd3131cc0df381981d7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2566ad890858fcd3131cc0df381981d7"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":939,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":939,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.917656,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"2566ad890858fcd3131cc0df381981d7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931144,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2566ad890858fcd3131cc0df381981d7","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe765e16e-e52c-4d5b-bba8-53adf3b1d3b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe765e16e-e52c-4d5b-bba8-53adf3b1d3b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:42.093433969Z"}]},"request_id":"9bd19d67-5da6-41fe-a6e5-f665383da715","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.2980714} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2566ad890858fcd3131cc0df381981d7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2566ad890858fcd3131cc0df381981d7"} gateway-1 | {"time_local":"21/Sep/2024:15:05:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2566ad890858fcd3131cc0df381981d7"} device-1 | {"level":"info","message":"GET /devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3? 200 17ms","method":"GET","requestID":"2566ad890858fcd3131cc0df381981d7","responseTime":17,"status":200,"url":"/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I","level":"info","message":"auth send jwt","requestID":"23c26a6c39722d1bf32d3f74f81e5134"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"23c26a6c39722d1bf32d3f74f81e5134","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"23c26a6c39722d1bf32d3f74f81e5134"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":940,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":940,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.300037,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"23c26a6c39722d1bf32d3f74f81e5134","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931144,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"23c26a6c39722d1bf32d3f74f81e5134","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:42.140634666Z"}]},"request_id":"fd24be73-3445-479a-af4a-5f452ca84b37","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.3233416} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"23c26a6c39722d1bf32d3f74f81e5134","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"23c26a6c39722d1bf32d3f74f81e5134"} gateway-1 | {"time_local":"21/Sep/2024:15:05:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"23c26a6c39722d1bf32d3f74f81e5134"} device-1 | {"level":"info","message":"GET /devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00? 200 19ms","method":"GET","requestID":"23c26a6c39722d1bf32d3f74f81e5134","responseTime":19,"status":200,"url":"/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I","level":"info","message":"auth send jwt","requestID":"986a8904268329f237181ec78cd9a158"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"986a8904268329f237181ec78cd9a158","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"986a8904268329f237181ec78cd9a158"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":941,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":941,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.810281,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"986a8904268329f237181ec78cd9a158","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931144,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"986a8904268329f237181ec78cd9a158","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5248da17-036d-4fea-9eed-6253b592d13d"},"level":"info","message":"Attempting to run experiment","requestID":"986a8904268329f237181ec78cd9a158"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5248da17-036d-4fea-9eed-6253b592d13d"},"level":"info","message":"Attempting to book experiment","requestID":"986a8904268329f237181ec78cd9a158"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5248da17-036d-4fea-9eed-6253b592d13d"},"level":"info","message":"Successfully booked experiment","requestID":"986a8904268329f237181ec78cd9a158"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f9a00c70-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f9a05a90-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":942,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":942,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.789154,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":943,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f9a00c70-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931144,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f9a00c70-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":943,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.857276,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f9a05a90-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931144,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f9a05a90-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe765e16e-e52c-4d5b-bba8-53adf3b1d3b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe765e16e-e52c-4d5b-bba8-53adf3b1d3b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:42.093433969Z"}]},"request_id":"d98411b5-0fea-493a-8d07-41af06ad2fae","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.3884013} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f9a00c70-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:42.140634666Z"}]},"request_id":"3c85d1a9-ca4b-4cee-8dbc-8e79ae22616b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.3900416} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f9a05a90-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f9a00c70-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3? 200 22ms","method":"GET","requestID":"f9a00c70-782a-11ef-88d4-5fea3f61bb98","responseTime":22,"status":200,"url":"/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f9a05a90-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00? 200 21ms","method":"GET","requestID":"f9a05a90-782a-11ef-88d4-5fea3f61bb98","responseTime":21,"status":200,"url":"/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5248da17-036d-4fea-9eed-6253b592d13d"},"level":"info","message":"Setting up experiment","requestID":"986a8904268329f237181ec78cd9a158"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5248da17-036d-4fea-9eed-6253b592d13d"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"986a8904268329f237181ec78cd9a158"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5248da17-036d-4fea-9eed-6253b592d13d"},"level":"info","message":"Successfully locked booking for experiment","requestID":"986a8904268329f237181ec78cd9a158"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5248da17-036d-4fea-9eed-6253b592d13d"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"986a8904268329f237181ec78cd9a158"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5248da17-036d-4fea-9eed-6253b592d13d"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"986a8904268329f237181ec78cd9a158"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5248da17-036d-4fea-9eed-6253b592d13d"},"level":"info","message":"Attempting to update booking for experiment","requestID":"986a8904268329f237181ec78cd9a158"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5248da17-036d-4fea-9eed-6253b592d13d"},"level":"info","message":"Successfully updated booking for experiment","requestID":"986a8904268329f237181ec78cd9a158"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5248da17-036d-4fea-9eed-6253b592d13d"},"level":"info","message":"Successfully set up experiment","requestID":"986a8904268329f237181ec78cd9a158"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f9aabad0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f9ab08f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f9ab5710-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5248da17-036d-4fea-9eed-6253b592d13d"},"level":"info","message":"Successfully running experiment","requestID":"986a8904268329f237181ec78cd9a158"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":944,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":945,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":944,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.246308,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":945,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.307555,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"client_addr":"127.0.0.1:59846","level":"info","msg":"Received request.","req_id":946,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f9aabad0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931144,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"f9aabad0-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f9ab08f0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931144,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"f9ab08f0-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59846","level":"info","msg":"Sent response.","req_id":946,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.322751,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe765e16e-e52c-4d5b-bba8-53adf3b1d3b3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a67b41f6-aa1b-4a20-a73e-219d589cb1eb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.4592159} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f9ab5710-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"f9ab5710-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f9ab5710-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3/signaling 200 19ms","method":"POST","requestID":"f9ab5710-782a-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe765e16e-e52c-4d5b-bba8-53adf3b1d3b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe765e16e-e52c-4d5b-bba8-53adf3b1d3b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:42.093433969Z"}]},"request_id":"d5b87d6c-bd17-44b5-be17-7e18eff52048","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.467311} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"f9aabad0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:42.140634666Z"}]},"request_id":"39bcfaae-f3e0-48ef-a00d-8a0338636dc8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.4693382} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f9ab08f0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f9aed980-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f9aabad0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3? 200 33ms","method":"GET","requestID":"f9aabad0-782a-11ef-88d4-5fea3f61bb98","responseTime":33,"status":200,"url":"/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f9ab08f0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":947,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4eddc462-158d-456f-a894-74050447c2dd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.4792826} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5248da17-036d-4fea-9eed-6253b592d13d#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5248da17-036d-4fea-9eed-6253b592d13d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"d5d3818a-438a-46a2-8aac-3528fbb6c400","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.479969} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"85074f30-aa44-46bd-9292-493fa3a605b3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.4805617} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":947,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.740914,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f9aed980-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"f9aed980-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00? 200 37ms","method":"GET","requestID":"f9ab08f0-782a-11ef-88d4-5fea3f61bb98","responseTime":37,"status":200,"url":"/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"986a8904268329f237181ec78cd9a158","responseTime":28,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f9b0fc60-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f9aed980-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":948,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} device-1 | {"level":"info","message":"POST /devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00/signaling 200 17ms","method":"POST","requestID":"f9aed980-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe765e16e-e52c-4d5b-bba8-53adf3b1d3b3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b07a3aee-64c0-4b25-8aff-f6d421895169","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.4909077} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":948,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.332844,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/5248da17-036d-4fea-9eed-6253b592d13d","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"986a8904268329f237181ec78cd9a158"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f9b0fc60-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} gateway-1 | {"time_local":"21/Sep/2024:15:05:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.160","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"986a8904268329f237181ec78cd9a158"} experiment-1 | {"level":"info","message":"POST /experiments? 201 153ms","method":"POST","requestID":"986a8904268329f237181ec78cd9a158","responseTime":153,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f9b0fc60-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f9b0fc60-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3/signaling 200 9ms","method":"POST","requestID":"f9b0fc60-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I","level":"info","message":"auth send jwt","requestID":"ec74352fa1a9fabe17de6c3120de982b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ec74352fa1a9fabe17de6c3120de982b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ec74352fa1a9fabe17de6c3120de982b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f9b2d120-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":949,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":949,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.689416,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ec74352fa1a9fabe17de6c3120de982b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931144,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ec74352fa1a9fabe17de6c3120de982b","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":950,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1862be5e-b871-41b6-a518-8d21d802c827","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.5022433} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":950,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.763408,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f9b2d120-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f9b2d120-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe765e16e-e52c-4d5b-bba8-53adf3b1d3b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe765e16e-e52c-4d5b-bba8-53adf3b1d3b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:42.093433969Z"}]},"request_id":"76c7bf42-05d9-4cea-b86f-7807206dae63","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.5047896} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ec74352fa1a9fabe17de6c3120de982b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f9b2d120-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00/signaling 200 12ms","method":"POST","requestID":"f9b2d120-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5248da17-036d-4fea-9eed-6253b592d13d"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"986a8904268329f237181ec78cd9a158"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ec74352fa1a9fabe17de6c3120de982b"} device-1 | {"level":"info","message":"GET /devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3? 200 18ms","method":"GET","requestID":"ec74352fa1a9fabe17de6c3120de982b","responseTime":18,"status":200,"url":"/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ec74352fa1a9fabe17de6c3120de982b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f9b54220-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f9b59040-782a-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I","level":"info","message":"auth send jwt","requestID":"82da22ce47bb654f6536e110df7dd1a0"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":951,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":951,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.973193,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"82da22ce47bb654f6536e110df7dd1a0","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"82da22ce47bb654f6536e110df7dd1a0"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f9b54220-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931144,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f9b54220-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":952,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":952,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.097832,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f9b59040-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931144,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f9b59040-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":953,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":953,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.287977,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"82da22ce47bb654f6536e110df7dd1a0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931144,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"82da22ce47bb654f6536e110df7dd1a0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe765e16e-e52c-4d5b-bba8-53adf3b1d3b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe765e16e-e52c-4d5b-bba8-53adf3b1d3b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:42.093433969Z"}]},"request_id":"83222a5e-27f9-4ecd-b7ba-cd81b33523c4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.5247154} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:42.140634666Z"}]},"request_id":"2b34025b-0b9e-4b2c-96b5-808c863afe92","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.5258257} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f9b54220-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f9b59040-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:42.140634666Z"}]},"request_id":"549c0351-78a3-4ee1-bda5-886a63f48d23","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.529409} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"82da22ce47bb654f6536e110df7dd1a0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f9b54220-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3? 200 18ms","method":"GET","requestID":"f9b54220-782a-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f9b59040-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00? 200 17ms","method":"GET","requestID":"f9b59040-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5248da17-036d-4fea-9eed-6253b592d13d"},"level":"info","message":"Building connection plan","requestID":"986a8904268329f237181ec78cd9a158"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"65aa964b-b91c-4c7a-ab13-4bd93a82a4f0"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"b69f32da-2df0-4894-a86b-e40bb7c066cc"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"b2591539-f5ea-4779-bd55-8ff14db45d9b"}]},"level":"info","message":"Built pairwise service configurations","requestID":"986a8904268329f237181ec78cd9a158"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"82da22ce47bb654f6536e110df7dd1a0"} gateway-1 | {"time_local":"21/Sep/2024:15:05:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"82da22ce47bb654f6536e110df7dd1a0"} device-1 | {"level":"info","message":"GET /devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00? 200 16ms","method":"GET","requestID":"82da22ce47bb654f6536e110df7dd1a0","responseTime":16,"status":200,"url":"/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00?"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"f9b87670-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"f9b87670-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"f9b87670-782a-11ef-938d-0b888d58857d","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/4ef745e6-b08f-42b9-9654-563a24f743d8?id=4e1e284a-f54e-4d2e-9c46-5e6901c28137","ws://localhost/rooms/4ef745e6-b08f-42b9-9654-563a24f743d8?id=2183e931-fdce-47f3-ab96-73126f88b567"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"986a8904268329f237181ec78cd9a158"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"f9b8eba0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":954,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":954,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.749347,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f9b8eba0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931144,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f9b8eba0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"94f7a7b0-8aba-47d6-8292-29bc2c032e9e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.5502615} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f3ed5fc3-db4d-42f8-97f4-4bf3c9033f21","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.5505164} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"f9b8eba0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"f9b8eba0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"f9b8eba0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/f537e73d-5754-4cbe-9fda-283a5e088fd5'","requestID":"f9b8eba0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/f537e73d-5754-4cbe-9fda-283a5e088fd5'","requestID":"f9b8eba0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"f9b8eba0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 26ms","method":"POST","requestID":"f9b8eba0-782a-11ef-88d4-5fea3f61bb98","responseTime":26,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"f9b8eba0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f537e73d-5754-4cbe-9fda-283a5e088fd5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f537e73d-5754-4cbe-9fda-283a5e088fd5","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"f9be42d0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"4e1e284a-f54e-4d2e-9c46-5e6901c28137\" in room \"http://localhost/rooms/4ef745e6-b08f-42b9-9654-563a24f743d8\"","requestID":"f9be42d0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"f9be42d0-782a-11ef-938d-0b888d58857d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7914ca80ea60d1dae9625e7001d215f6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"f9beb800-782a-11ef-938d-0b888d58857d"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7914ca80ea60d1dae9625e7001d215f6","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2183e931-fdce-47f3-ab96-73126f88b567\" in room \"http://localhost/rooms/4ef745e6-b08f-42b9-9654-563a24f743d8\"","requestID":"f9beb800-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"f9beb800-782a-11ef-938d-0b888d58857d"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/f537e73d-5754-4cbe-9fda-283a5e088fd5"}}},"level":"info","message":"received a callback","requestID":"7914ca80ea60d1dae9625e7001d215f6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"4e1e284a-f54e-4d2e-9c46-5e6901c28137\" in room \"http://localhost/rooms/4ef745e6-b08f-42b9-9654-563a24f743d8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"4e1e284a-f54e-4d2e-9c46-5e6901c28137\" in room \"http://localhost/rooms/4ef745e6-b08f-42b9-9654-563a24f743d8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"4e1e284a-f54e-4d2e-9c46-5e6901c28137\" in room \"http://localhost/rooms/4ef745e6-b08f-42b9-9654-563a24f743d8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"4e1e284a-f54e-4d2e-9c46-5e6901c28137\" in room \"http://localhost/rooms/4ef745e6-b08f-42b9-9654-563a24f743d8\""} device-1 | {"data":{"peerconnection":"f537e73d-5754-4cbe-9fda-283a5e088fd5","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"7914ca80ea60d1dae9625e7001d215f6","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"7914ca80ea60d1dae9625e7001d215f6"} device-1 | {"data":{"peerconnection":"f537e73d-5754-4cbe-9fda-283a5e088fd5","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5248da17-036d-4fea-9eed-6253b592d13d"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"986a8904268329f237181ec78cd9a158"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f9c2d6b0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":955,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe765e16e-e52c-4d5b-bba8-53adf3b1d3b3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b5724e1d-2f49-4e8c-8730-8b13103cb926","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.6083627} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":955,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.495972,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f537e73d-5754-4cbe-9fda-283a5e088fd5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f537e73d-5754-4cbe-9fda-283a5e088fd5","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f9c2d6b0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f9c2d6b0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2525436fda507e611c5c2e84a628c7a5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2525436fda507e611c5c2e84a628c7a5","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/f537e73d-5754-4cbe-9fda-283a5e088fd5"}}},"level":"info","message":"received a callback","requestID":"2525436fda507e611c5c2e84a628c7a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f9c2d6b0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3/signaling 200 10ms","method":"POST","requestID":"f9c2d6b0-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f9c4d280-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":956,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"f9c56ec0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7c91a507-3287-4c28-b639-e106847e3f68","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.6217747} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":956,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.455896,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":957,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f9c4d280-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f9c4d280-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff537e73d-5754-4cbe-9fda-283a5e088fd5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e4d909c6-1012-49f1-8236-a5c671310426","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.6249244} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":957,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.4431,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f537e73d-5754-4cbe-9fda-283a5e088fd5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f9c56ec0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/f537e73d-5754-4cbe-9fda-283a5e088fd5","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f9c56ec0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f9c4d280-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00/signaling 200 11ms","method":"POST","requestID":"f9c4d280-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00/signaling"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"f9c56ec0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/f537e73d-5754-4cbe-9fda-283a5e088fd5 200 9ms","method":"GET","requestID":"f9c56ec0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/peerconnections/f537e73d-5754-4cbe-9fda-283a5e088fd5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 29ms","method":"POST","requestID":"2525436fda507e611c5c2e84a628c7a5","responseTime":29,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"2525436fda507e611c5c2e84a628c7a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f9c8ca20-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":958,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"40a6914d-947b-490a-886a-e1d0a96d9484","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.6466165} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":958,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.17727,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f9c8ca20-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f9c8ca20-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f9c8ca20-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00/signaling 200 8ms","method":"POST","requestID":"f9c8ca20-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f9ca50c0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":959,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe765e16e-e52c-4d5b-bba8-53adf3b1d3b3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c8cae2a1-9e78-4755-92c7-4b6debe2db1e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.656712} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":959,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.573067,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f9ca50c0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f9ca50c0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f9ca50c0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3/signaling 200 8ms","method":"POST","requestID":"f9ca50c0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I","level":"info","message":"auth send jwt","requestID":"a04f55d7997cf5737992623b4ca7808b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a04f55d7997cf5737992623b4ca7808b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/5248da17-036d-4fea-9eed-6253b592d13d","requestID":"a04f55d7997cf5737992623b4ca7808b"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":960,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":960,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.835005,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5248da17-036d-4fea-9eed-6253b592d13d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a04f55d7997cf5737992623b4ca7808b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/5248da17-036d-4fea-9eed-6253b592d13d","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931144,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a04f55d7997cf5737992623b4ca7808b","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/5248da17-036d-4fea-9eed-6253b592d13d","requestID":"a04f55d7997cf5737992623b4ca7808b"} gateway-1 | {"time_local":"21/Sep/2024:15:05:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/5248da17-036d-4fea-9eed-6253b592d13d HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a04f55d7997cf5737992623b4ca7808b"} experiment-1 | {"level":"info","message":"GET /experiments/5248da17-036d-4fea-9eed-6253b592d13d 200 12ms","method":"GET","requestID":"a04f55d7997cf5737992623b4ca7808b","responseTime":12,"status":200,"url":"/experiments/5248da17-036d-4fea-9eed-6253b592d13d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I","level":"info","message":"auth send jwt","requestID":"ace10f05e2373e5f9c10b724b761c494"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ace10f05e2373e5f9c10b724b761c494","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/5248da17-036d-4fea-9eed-6253b592d13d","requestID":"ace10f05e2373e5f9c10b724b761c494"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":961,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":961,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.142741,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5248da17-036d-4fea-9eed-6253b592d13d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ace10f05e2373e5f9c10b724b761c494","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/5248da17-036d-4fea-9eed-6253b592d13d","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931144,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ace10f05e2373e5f9c10b724b761c494","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5248da17-036d-4fea-9eed-6253b592d13d"},"level":"info","message":"Attempting to finish experiment","requestID":"ace10f05e2373e5f9c10b724b761c494"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"f9d3c6a0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":962,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":962,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.888177,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f537e73d-5754-4cbe-9fda-283a5e088fd5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f9d3c6a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/f537e73d-5754-4cbe-9fda-283a5e088fd5","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931144,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f9d3c6a0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:05:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/4ef745e6-b08f-42b9-9654-563a24f743d8?id=4e1e284a-f54e-4d2e-9c46-5e6901c28137 HTTP/1.1","status": "101","body_bytes_sent":"436","request_time":"0.156","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e42a93141e95a9c6df73d637ff8cf6db"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"4e1e284a-f54e-4d2e-9c46-5e6901c28137\" in room \"http://localhost/rooms/4ef745e6-b08f-42b9-9654-563a24f743d8\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"4e1e284a-f54e-4d2e-9c46-5e6901c28137\" from room \"http://localhost/rooms/4ef745e6-b08f-42b9-9654-563a24f743d8\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/f537e73d-5754-4cbe-9fda-283a5e088fd5","device":"e765e16e-e52c-4d5b-bba8-53adf3b1d3b3","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f537e73d-5754-4cbe-9fda-283a5e088fd5' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/f537e73d-5754-4cbe-9fda-283a5e088fd5' to 'http://localhost/callbacks/experiment'"} gateway-1 | {"time_local":"21/Sep/2024:15:05:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/4ef745e6-b08f-42b9-9654-563a24f743d8?id=2183e931-fdce-47f3-ab96-73126f88b567 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.156","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"499719adb09e630fd77bd705e8d533b3"} device-1 | {"data":{"peerconnection":"f537e73d-5754-4cbe-9fda-283a5e088fd5","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"2183e931-fdce-47f3-ab96-73126f88b567\" in room \"http://localhost/rooms/4ef745e6-b08f-42b9-9654-563a24f743d8\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"2183e931-fdce-47f3-ab96-73126f88b567\" from room \"http://localhost/rooms/4ef745e6-b08f-42b9-9654-563a24f743d8\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0749d570cf612f13e68487bba697db7c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0749d570cf612f13e68487bba697db7c","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"10f7045959c986f2d9bb7f377b33c8a3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/f537e73d-5754-4cbe-9fda-283a5e088fd5"}}},"level":"info","message":"received a callback","requestID":"0749d570cf612f13e68487bba697db7c"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"10f7045959c986f2d9bb7f377b33c8a3","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff537e73d-5754-4cbe-9fda-283a5e088fd5': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff537e73d-5754-4cbe-9fda-283a5e088fd5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"01b0df37-8a88-4659-8444-c8317ad7ac55","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.7381802} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"857d6201-5d17-4288-a9d3-4381c87371ea","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.7384872} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/f537e73d-5754-4cbe-9fda-283a5e088fd5"}}},"level":"info","message":"received a callback","requestID":"10f7045959c986f2d9bb7f377b33c8a3"} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"f9d3c6a0-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"f537e73d-5754-4cbe-9fda-283a5e088fd5","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"f9d3c6a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/f537e73d-5754-4cbe-9fda-283a5e088fd5 204 42ms","method":"DELETE","requestID":"f9d3c6a0-782a-11ef-88d4-5fea3f61bb98","responseTime":42,"status":204,"url":"/peerconnections/f537e73d-5754-4cbe-9fda-283a5e088fd5"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5248da17-036d-4fea-9eed-6253b592d13d"},"level":"info","message":"Successfully finished experiment","requestID":"ace10f05e2373e5f9c10b724b761c494"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f9dca040-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":963,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"48ef1207-848a-449d-89cd-e3323d4e02e5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.7799342} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":963,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.451472,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f9dca040-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"f9dca040-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f9dca040-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00/signaling 200 14ms","method":"POST","requestID":"f9dca040-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f9df1140-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":964,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe765e16e-e52c-4d5b-bba8-53adf3b1d3b3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f24cef6e-b8bb-44ec-906e-a5d632b0a19b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.7929254} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":964,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.486277,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f9df1140-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f9df1140-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5248da17-036d-4fea-9eed-6253b592d13d': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5248da17-036d-4fea-9eed-6253b592d13d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"df445962-8aa8-4e72-bfdc-7c3207ad1e63","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.7953272} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e92f5f63-5277-454a-83aa-30dcd0824633","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.795647} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f9df1140-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3/signaling 200 11ms","method":"POST","requestID":"f9df1140-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 29ms","method":"POST","requestID":"ace10f05e2373e5f9c10b724b761c494","responseTime":29,"status":200,"url":"/relations/update"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/5248da17-036d-4fea-9eed-6253b592d13d","requestID":"ace10f05e2373e5f9c10b724b761c494"} gateway-1 | {"time_local":"21/Sep/2024:15:05:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/5248da17-036d-4fea-9eed-6253b592d13d HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.159","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ace10f05e2373e5f9c10b724b761c494"} experiment-1 | {"level":"info","message":"DELETE /experiments/5248da17-036d-4fea-9eed-6253b592d13d 204 157ms","method":"DELETE","requestID":"ace10f05e2373e5f9c10b724b761c494","responseTime":157,"status":204,"url":"/experiments/5248da17-036d-4fea-9eed-6253b592d13d"} gateway-1 | {"time_local":"21/Sep/2024:15:05:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1782","request_time":"2.173","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"3edb4fb793f7e55336349fbfb195608f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"0749d570cf612f13e68487bba697db7c","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.127","http_referrer":"","http_user_agent":"node-fetch","requestID":"0749d570cf612f13e68487bba697db7c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"10f7045959c986f2d9bb7f377b33c8a3","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.127","http_referrer":"","http_user_agent":"node-fetch","requestID":"10f7045959c986f2d9bb7f377b33c8a3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I","level":"info","message":"auth send jwt","requestID":"bfefeaebe8bc99f03b383902f0fe716d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bfefeaebe8bc99f03b383902f0fe716d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"bfefeaebe8bc99f03b383902f0fe716d"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":965,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":965,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.51626,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bfefeaebe8bc99f03b383902f0fe716d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931144,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bfefeaebe8bc99f03b383902f0fe716d","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/4dbcc103-1e5c-49e1-ae6c-ca14970a6b00' closed"} gateway-1 | {"time_local":"21/Sep/2024:15:05:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2107","request_time":"0.685","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a15c1942f6e361197fbd5734d3718426"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa562fda4-78b7-49e8-99b4-e8776f9219d1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0c48a95f-fa9d-4e95-ba32-61e621bd346f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.8899393} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bfefeaebe8bc99f03b383902f0fe716d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/e765e16e-e52c-4d5b-bba8-53adf3b1d3b3' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5feae3f1-3c07-403a-9003-cf1b5df0b6f3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.895925} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"bfefeaebe8bc99f03b383902f0fe716d","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa562fda4-78b7-49e8-99b4-e8776f9219d1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"27ea4f38-6400-484c-a612-dabf1fabab40","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.912228} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3a69a287-ebed-4a48-ba71-a627c1c20725","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.912417} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"bfefeaebe8bc99f03b383902f0fe716d","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa562fda4-78b7-49e8-99b4-e8776f9219d1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa562fda4-78b7-49e8-99b4-e8776f9219d1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:44.912199667Z"}]},"request_id":"40bdfe94-46d9-40ca-b9ed-6aa187ef0a59","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.9178457} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bfefeaebe8bc99f03b383902f0fe716d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"bfefeaebe8bc99f03b383902f0fe716d"} gateway-1 | {"time_local":"21/Sep/2024:15:05:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.062","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bfefeaebe8bc99f03b383902f0fe716d"} device-1 | {"level":"info","message":"POST /devices? 201 57ms","method":"POST","requestID":"bfefeaebe8bc99f03b383902f0fe716d","responseTime":57,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I","level":"info","message":"auth send jwt","requestID":"8b049e7f7603cec1b80d5f700529d22f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8b049e7f7603cec1b80d5f700529d22f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8b049e7f7603cec1b80d5f700529d22f"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":966,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":966,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.717627,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"8b049e7f7603cec1b80d5f700529d22f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931144,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NH0.58XWliQ5puNSmROKfc6-uPO3fRldYeBMLcFE57JxS6I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8b049e7f7603cec1b80d5f700529d22f","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700b7c87-daa4-4d01-8855-d7646bf4b217","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b87ed7b0-6638-4fad-aa83-8697dec50a95","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.9438841} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"8b049e7f7603cec1b80d5f700529d22f","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b485fba7-6b0b-40d4-a370-1deadc810490","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.9491894} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"8b049e7f7603cec1b80d5f700529d22f","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700b7c87-daa4-4d01-8855-d7646bf4b217","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"c853e9b9-7f0d-43b5-a213-341eef954d82","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.9598076} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a845d8a8-c6d0-4af0-ac9b-b6f86ec1d870","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.959973} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"8b049e7f7603cec1b80d5f700529d22f","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700b7c87-daa4-4d01-8855-d7646bf4b217","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700b7c87-daa4-4d01-8855-d7646bf4b217","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:44.959741946Z"}]},"request_id":"91db2164-8ad0-497b-8019-e8be16262ae1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931144.9643285} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8b049e7f7603cec1b80d5f700529d22f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8b049e7f7603cec1b80d5f700529d22f"} gateway-1 | {"time_local":"21/Sep/2024:15:05:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8b049e7f7603cec1b80d5f700529d22f"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"8b049e7f7603cec1b80d5f700529d22f","responseTime":39,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NX0.B3ug4qm_mSm9ecN9xqE8U_foXVnHnpaJLz36MmdK3f4","level":"info","message":"auth send jwt","requestID":"7ca83df94f44e98284c770181a53c88d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7ca83df94f44e98284c770181a53c88d","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"7ca83df94f44e98284c770181a53c88d"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":967,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:45Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":967,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.24176,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:45Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"7ca83df94f44e98284c770181a53c88d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931145,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NX0.B3ug4qm_mSm9ecN9xqE8U_foXVnHnpaJLz36MmdK3f4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7ca83df94f44e98284c770181a53c88d","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700b7c87-daa4-4d01-8855-d7646bf4b217","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700b7c87-daa4-4d01-8855-d7646bf4b217","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:44.959741946Z"}]},"request_id":"9cd43c43-5ff6-4b5a-a571-710ba69fd9ad","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931145.456148} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7ca83df94f44e98284c770181a53c88d","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"de3d981a-b8ab-497f-bc45-56f25f3fec99","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931145.4634533} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"7ca83df94f44e98284c770181a53c88d","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700b7c87-daa4-4d01-8855-d7646bf4b217","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700b7c87-daa4-4d01-8855-d7646bf4b217","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:44.959741946Z"}]},"request_id":"7a8f1a36-0b53-4949-9c95-49cfe12ab71a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931145.4773476} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7ca83df94f44e98284c770181a53c88d","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"7ca83df94f44e98284c770181a53c88d"} gateway-1 | {"time_local":"21/Sep/2024:15:05:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/700b7c87-daa4-4d01-8855-d7646bf4b217 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.046","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"7ca83df94f44e98284c770181a53c88d"} device-1 | {"level":"info","message":"PATCH /devices/700b7c87-daa4-4d01-8855-d7646bf4b217 200 40ms","method":"PATCH","requestID":"7ca83df94f44e98284c770181a53c88d","responseTime":40,"status":200,"url":"/devices/700b7c87-daa4-4d01-8855-d7646bf4b217"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NX0.B3ug4qm_mSm9ecN9xqE8U_foXVnHnpaJLz36MmdK3f4","level":"info","message":"auth send jwt","requestID":"26b89b66ad20b28cca3fd3a821a40510"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"26b89b66ad20b28cca3fd3a821a40510","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"26b89b66ad20b28cca3fd3a821a40510"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":968,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:45Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":968,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.287036,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:45Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"26b89b66ad20b28cca3fd3a821a40510","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931145,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0NX0.B3ug4qm_mSm9ecN9xqE8U_foXVnHnpaJLz36MmdK3f4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"26b89b66ad20b28cca3fd3a821a40510","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"26b89b66ad20b28cca3fd3a821a40510"} gateway-1 | {"time_local":"21/Sep/2024:15:05:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/700b7c87-daa4-4d01-8855-d7646bf4b217/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"26b89b66ad20b28cca3fd3a821a40510"} device-1 | {"level":"info","message":"POST /devices/700b7c87-daa4-4d01-8855-d7646bf4b217/websocket 200 18ms","method":"POST","requestID":"26b89b66ad20b28cca3fd3a821a40510","responseTime":18,"status":200,"url":"/devices/700b7c87-daa4-4d01-8855-d7646bf4b217/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f16f9edd25c48bfc55decd597dc81e8e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f16f9edd25c48bfc55decd597dc81e8e","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a562fda4-78b7-49e8-99b4-e8776f9219d1/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f16f9edd25c48bfc55decd597dc81e8e"} device-1 | {"level":"info","message":"OPTIONS /devices/a562fda4-78b7-49e8-99b4-e8776f9219d1/websocket 200 1ms","method":"OPTIONS","requestID":"f16f9edd25c48bfc55decd597dc81e8e","responseTime":1,"status":200,"url":"/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0Nn0.ZE5sihDEv8i70Z9gdK-rKcLJhAJ_7HgXNxA-kjxD3I8","level":"info","message":"auth send jwt","requestID":"65db0504eff4bdfacc885aec45f5ad53"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"65db0504eff4bdfacc885aec45f5ad53","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"65db0504eff4bdfacc885aec45f5ad53"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":969,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:46Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":969,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.426701,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"65db0504eff4bdfacc885aec45f5ad53","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931146,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0Nn0.ZE5sihDEv8i70Z9gdK-rKcLJhAJ_7HgXNxA-kjxD3I8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"65db0504eff4bdfacc885aec45f5ad53","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"65db0504eff4bdfacc885aec45f5ad53"} gateway-1 | {"time_local":"21/Sep/2024:15:05:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a562fda4-78b7-49e8-99b4-e8776f9219d1/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"65db0504eff4bdfacc885aec45f5ad53"} device-1 | {"level":"info","message":"POST /devices/a562fda4-78b7-49e8-99b4-e8776f9219d1/websocket 200 21ms","method":"POST","requestID":"65db0504eff4bdfacc885aec45f5ad53","responseTime":21,"status":200,"url":"/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"84f4b7c63b8a1cfc52d6664dd1a64585","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"84f4b7c63b8a1cfc52d6664dd1a64585","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a562fda4-78b7-49e8-99b4-e8776f9219d1? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"84f4b7c63b8a1cfc52d6664dd1a64585"} device-1 | {"level":"info","message":"OPTIONS /devices/a562fda4-78b7-49e8-99b4-e8776f9219d1? 200 1ms","method":"OPTIONS","requestID":"84f4b7c63b8a1cfc52d6664dd1a64585","responseTime":1,"status":200,"url":"/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24","level":"info","message":"auth send jwt","requestID":"b00c99fd67f1a11edbe5298c42f17f76"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b00c99fd67f1a11edbe5298c42f17f76","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b00c99fd67f1a11edbe5298c42f17f76"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":970,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":970,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.915772,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b00c99fd67f1a11edbe5298c42f17f76","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931147,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b00c99fd67f1a11edbe5298c42f17f76","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa562fda4-78b7-49e8-99b4-e8776f9219d1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa562fda4-78b7-49e8-99b4-e8776f9219d1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:44.912199667Z"}]},"request_id":"0b73df01-392a-4c4c-98f5-28066c6fe5f5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.057357} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b00c99fd67f1a11edbe5298c42f17f76","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4178a73b-dc78-49ab-8ac3-0b6323a7b669","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.064785} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b00c99fd67f1a11edbe5298c42f17f76","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa562fda4-78b7-49e8-99b4-e8776f9219d1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa562fda4-78b7-49e8-99b4-e8776f9219d1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:44.912199667Z"}]},"request_id":"1571566d-28cb-451b-bd86-46b3f229117e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.0757844} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b00c99fd67f1a11edbe5298c42f17f76","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b00c99fd67f1a11edbe5298c42f17f76"} gateway-1 | {"time_local":"21/Sep/2024:15:05:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a562fda4-78b7-49e8-99b4-e8776f9219d1? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.039","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b00c99fd67f1a11edbe5298c42f17f76"} device-1 | {"level":"info","message":"PATCH /devices/a562fda4-78b7-49e8-99b4-e8776f9219d1? 200 34ms","method":"PATCH","requestID":"b00c99fd67f1a11edbe5298c42f17f76","responseTime":34,"status":200,"url":"/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24","level":"info","message":"auth send jwt","requestID":"6ffe489edb424dd1213b0bc7ef2c8fa2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6ffe489edb424dd1213b0bc7ef2c8fa2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6ffe489edb424dd1213b0bc7ef2c8fa2"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":971,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":971,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.919062,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"6ffe489edb424dd1213b0bc7ef2c8fa2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931147,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6ffe489edb424dd1213b0bc7ef2c8fa2","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa562fda4-78b7-49e8-99b4-e8776f9219d1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa562fda4-78b7-49e8-99b4-e8776f9219d1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:44.912199667Z"}]},"request_id":"1a309eca-45dd-49ab-86f4-0abc92d7f651","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.1011543} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6ffe489edb424dd1213b0bc7ef2c8fa2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6ffe489edb424dd1213b0bc7ef2c8fa2"} gateway-1 | {"time_local":"21/Sep/2024:15:05:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a562fda4-78b7-49e8-99b4-e8776f9219d1? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6ffe489edb424dd1213b0bc7ef2c8fa2"} device-1 | {"level":"info","message":"GET /devices/a562fda4-78b7-49e8-99b4-e8776f9219d1? 200 15ms","method":"GET","requestID":"6ffe489edb424dd1213b0bc7ef2c8fa2","responseTime":15,"status":200,"url":"/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24","level":"info","message":"auth send jwt","requestID":"f4c3e5637fc9240a48c81d710b6f5833"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f4c3e5637fc9240a48c81d710b6f5833","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f4c3e5637fc9240a48c81d710b6f5833"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":972,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":972,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.861001,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f4c3e5637fc9240a48c81d710b6f5833","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931147,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f4c3e5637fc9240a48c81d710b6f5833","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700b7c87-daa4-4d01-8855-d7646bf4b217","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700b7c87-daa4-4d01-8855-d7646bf4b217","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:44.959741946Z"}]},"request_id":"4c82154c-f8f8-477d-afdf-5d64d64f7761","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.1211534} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f4c3e5637fc9240a48c81d710b6f5833","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f4c3e5637fc9240a48c81d710b6f5833"} gateway-1 | {"time_local":"21/Sep/2024:15:05:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/700b7c87-daa4-4d01-8855-d7646bf4b217? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f4c3e5637fc9240a48c81d710b6f5833"} device-1 | {"level":"info","message":"GET /devices/700b7c87-daa4-4d01-8855-d7646bf4b217? 200 16ms","method":"GET","requestID":"f4c3e5637fc9240a48c81d710b6f5833","responseTime":16,"status":200,"url":"/devices/700b7c87-daa4-4d01-8855-d7646bf4b217?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24","level":"info","message":"auth send jwt","requestID":"f6906d1f785a63b5a108a713683d420d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f6906d1f785a63b5a108a713683d420d","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"f6906d1f785a63b5a108a713683d420d"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":973,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":973,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.059466,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f6906d1f785a63b5a108a713683d420d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931147,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f6906d1f785a63b5a108a713683d420d","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c"},"level":"info","message":"Attempting to run experiment","requestID":"f6906d1f785a63b5a108a713683d420d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c"},"level":"info","message":"Attempting to book experiment","requestID":"f6906d1f785a63b5a108a713683d420d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c"},"level":"info","message":"Successfully booked experiment","requestID":"f6906d1f785a63b5a108a713683d420d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fb4a8820-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fb4aaf30-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":974,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":974,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.632356,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":975,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fb4a8820-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931147,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fb4a8820-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":975,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.562492,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fb4aaf30-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931147,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fb4aaf30-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa562fda4-78b7-49e8-99b4-e8776f9219d1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa562fda4-78b7-49e8-99b4-e8776f9219d1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:44.912199667Z"}]},"request_id":"8f16e5c4-7f36-4b78-af96-a05baf36fa4c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.1780128} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fb4a8820-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700b7c87-daa4-4d01-8855-d7646bf4b217","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700b7c87-daa4-4d01-8855-d7646bf4b217","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:44.959741946Z"}]},"request_id":"a37a68c3-1027-4d6a-85cc-689ea4d81e60","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.179014} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fb4aaf30-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fb4a8820-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/a562fda4-78b7-49e8-99b4-e8776f9219d1? 200 13ms","method":"GET","requestID":"fb4a8820-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fb4aaf30-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/700b7c87-daa4-4d01-8855-d7646bf4b217? 200 13ms","method":"GET","requestID":"fb4aaf30-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/700b7c87-daa4-4d01-8855-d7646bf4b217?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c"},"level":"info","message":"Setting up experiment","requestID":"f6906d1f785a63b5a108a713683d420d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"f6906d1f785a63b5a108a713683d420d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c"},"level":"info","message":"Successfully locked booking for experiment","requestID":"f6906d1f785a63b5a108a713683d420d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"f6906d1f785a63b5a108a713683d420d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"f6906d1f785a63b5a108a713683d420d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c"},"level":"info","message":"Attempting to update booking for experiment","requestID":"f6906d1f785a63b5a108a713683d420d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c"},"level":"info","message":"Successfully updated booking for experiment","requestID":"f6906d1f785a63b5a108a713683d420d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c"},"level":"info","message":"Successfully set up experiment","requestID":"f6906d1f785a63b5a108a713683d420d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fb542510-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fb544c20-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fb547330-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c"},"level":"info","message":"Successfully running experiment","requestID":"f6906d1f785a63b5a108a713683d420d"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":976,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":976,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.904688,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":977,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fb542510-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931147,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fb542510-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":977,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.756869,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"client_addr":"127.0.0.1:59846","level":"info","msg":"Received request.","req_id":978,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fb544c20-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931147,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fb544c20-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa562fda4-78b7-49e8-99b4-e8776f9219d1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d22d752f-beb7-4a57-9ef4-b6674d23be34","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.2402322} authorization-1 | {"client_addr":"127.0.0.1:59846","level":"info","msg":"Sent response.","req_id":978,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.493181,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fb547330-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fb547330-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fb547330-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a562fda4-78b7-49e8-99b4-e8776f9219d1/signaling 200 10ms","method":"POST","requestID":"fb547330-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa562fda4-78b7-49e8-99b4-e8776f9219d1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa562fda4-78b7-49e8-99b4-e8776f9219d1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:44.912199667Z"}]},"request_id":"2f515ede-6aed-4cb8-9931-e2523402f154","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.2450907} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fb542510-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700b7c87-daa4-4d01-8855-d7646bf4b217","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700b7c87-daa4-4d01-8855-d7646bf4b217","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:44.959741946Z"}]},"request_id":"16c32cc8-799e-4307-82dc-71fb49a815f2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.2463732} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fb544c20-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fb56bd20-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fb542510-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/a562fda4-78b7-49e8-99b4-e8776f9219d1? 200 18ms","method":"GET","requestID":"fb542510-782a-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fb544c20-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/700b7c87-daa4-4d01-8855-d7646bf4b217? 200 18ms","method":"GET","requestID":"fb544c20-782a-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/700b7c87-daa4-4d01-8855-d7646bf4b217?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":979,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fb578070-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700b7c87-daa4-4d01-8855-d7646bf4b217","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"40568ff5-46ec-4281-ac38-40d7fb2a3b13","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.2554042} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":979,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.52988,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fb56bd20-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"fb56bd20-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F718488b0-1af1-42ff-affe-e54f4d5b9f4c#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F718488b0-1af1-42ff-affe-e54f4d5b9f4c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"298775ca-60d8-4b64-9363-fc643ca8d8b7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.2570226} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8b496f87-f2b6-489e-adbb-e52639e8c032","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.2571864} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":980,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fb56bd20-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/700b7c87-daa4-4d01-8855-d7646bf4b217/signaling 200 11ms","method":"POST","requestID":"fb56bd20-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/700b7c87-daa4-4d01-8855-d7646bf4b217/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"f6906d1f785a63b5a108a713683d420d","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa562fda4-78b7-49e8-99b4-e8776f9219d1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cf86f1ac-b476-4ba0-a8c1-005c5be979fe","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.2595978} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":980,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.387697,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fb578070-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fb578070-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fb578070-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a562fda4-78b7-49e8-99b4-e8776f9219d1/signaling 200 10ms","method":"POST","requestID":"fb578070-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"f6906d1f785a63b5a108a713683d420d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fb59a350-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"level":"info","message":"POST /experiments? 201 136ms","method":"POST","requestID":"f6906d1f785a63b5a108a713683d420d","responseTime":136,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.141","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f6906d1f785a63b5a108a713683d420d"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":981,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700b7c87-daa4-4d01-8855-d7646bf4b217","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a144494a-f6c1-4c11-b4c6-a66a48ebb6d8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.2751033} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":981,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.637456,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24","level":"info","message":"auth send jwt","requestID":"16899a0bd6f5685b0383b2a70885dd18"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fb59a350-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"16899a0bd6f5685b0383b2a70885dd18","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"fb59a350-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"16899a0bd6f5685b0383b2a70885dd18"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":982,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":982,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.903303,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"16899a0bd6f5685b0383b2a70885dd18","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931147,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"16899a0bd6f5685b0383b2a70885dd18","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fb59a350-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/700b7c87-daa4-4d01-8855-d7646bf4b217/signaling 200 15ms","method":"POST","requestID":"fb59a350-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/700b7c87-daa4-4d01-8855-d7646bf4b217/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"f6906d1f785a63b5a108a713683d420d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fb5c3b60-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fb5c6270-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa562fda4-78b7-49e8-99b4-e8776f9219d1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa562fda4-78b7-49e8-99b4-e8776f9219d1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:44.912199667Z"}]},"request_id":"580229fa-35c1-4ebe-bfca-aeb8ed8aa8a3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.2880352} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"16899a0bd6f5685b0383b2a70885dd18","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":983,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":983,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.76259,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":984,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fb5c3b60-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931147,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"16899a0bd6f5685b0383b2a70885dd18"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fb5c3b60-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:05:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a562fda4-78b7-49e8-99b4-e8776f9219d1? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"16899a0bd6f5685b0383b2a70885dd18"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":984,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.926041,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} device-1 | {"level":"info","message":"GET /devices/a562fda4-78b7-49e8-99b4-e8776f9219d1? 200 14ms","method":"GET","requestID":"16899a0bd6f5685b0383b2a70885dd18","responseTime":14,"status":200,"url":"/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fb5c6270-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931147,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fb5c6270-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24","level":"info","message":"auth send jwt","requestID":"f8ead08a96a306d942ab8e3fa8c5577e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f8ead08a96a306d942ab8e3fa8c5577e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f8ead08a96a306d942ab8e3fa8c5577e"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa562fda4-78b7-49e8-99b4-e8776f9219d1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa562fda4-78b7-49e8-99b4-e8776f9219d1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:44.912199667Z"}]},"request_id":"94c4136c-7b95-4904-b5e3-414e01e66e83","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.297518} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fb5c3b60-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700b7c87-daa4-4d01-8855-d7646bf4b217","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700b7c87-daa4-4d01-8855-d7646bf4b217","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:44.959741946Z"}]},"request_id":"c0414113-a799-4583-ba86-8bfb2de3c3c7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.298547} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"fb5c6270-782a-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":985,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":985,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.783114,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f8ead08a96a306d942ab8e3fa8c5577e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931147,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f8ead08a96a306d942ab8e3fa8c5577e","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fb5c3b60-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/a562fda4-78b7-49e8-99b4-e8776f9219d1? 200 17ms","method":"GET","requestID":"fb5c3b60-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fb5c6270-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/700b7c87-daa4-4d01-8855-d7646bf4b217? 200 17ms","method":"GET","requestID":"fb5c6270-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/700b7c87-daa4-4d01-8855-d7646bf4b217?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c"},"level":"info","message":"Building connection plan","requestID":"f6906d1f785a63b5a108a713683d420d"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"c5070861-dced-4bb2-8bb2-17c4a2054dae"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"8841ba72-cf16-4357-b3c5-05218eb9ef1c"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"72bd8b07-01dd-4d58-973e-4b8e50458485"}]},"level":"info","message":"Built pairwise service configurations","requestID":"f6906d1f785a63b5a108a713683d420d"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"fb5f48a0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"fb5f48a0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"fb5f48a0-782a-11ef-938d-0b888d58857d","responseTime":1,"status":201,"url":"/rooms"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700b7c87-daa4-4d01-8855-d7646bf4b217","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700b7c87-daa4-4d01-8855-d7646bf4b217","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:44.959741946Z"}]},"request_id":"9b1ebf24-9595-4eb6-a1e9-9247275219aa","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.3082695} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/ae4cfa3a-8297-4e7c-8558-ad9713b13653?id=c952f08c-e727-4708-b0ff-f0c9f9e31095","ws://localhost/rooms/ae4cfa3a-8297-4e7c-8558-ad9713b13653?id=0f766a43-d937-4e7a-b460-80629ef6ff35"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"f6906d1f785a63b5a108a713683d420d"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f8ead08a96a306d942ab8e3fa8c5577e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"fb5fbdd0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":986,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f8ead08a96a306d942ab8e3fa8c5577e"} gateway-1 | {"time_local":"21/Sep/2024:15:05:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/700b7c87-daa4-4d01-8855-d7646bf4b217? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f8ead08a96a306d942ab8e3fa8c5577e"} device-1 | {"level":"info","message":"GET /devices/700b7c87-daa4-4d01-8855-d7646bf4b217? 200 16ms","method":"GET","requestID":"f8ead08a96a306d942ab8e3fa8c5577e","responseTime":16,"status":200,"url":"/devices/700b7c87-daa4-4d01-8855-d7646bf4b217?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":986,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.811252,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fb5fbdd0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931147,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fb5fbdd0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"70e1f506-569e-4531-a563-9ec2c9a362f4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.3209114} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c503f3c0-00d4-4b61-85a2-05689134eb92","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.321095} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"fb5fbdd0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"fb5fbdd0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"fb5fbdd0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/4718987f-a78a-4631-a72c-99a9b5129fcf'","requestID":"fb5fbdd0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/4718987f-a78a-4631-a72c-99a9b5129fcf'","requestID":"fb5fbdd0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"fb5fbdd0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 24ms","method":"POST","requestID":"fb5fbdd0-782a-11ef-88d4-5fea3f61bb98","responseTime":24,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"fb5fbdd0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/4718987f-a78a-4631-a72c-99a9b5129fcf' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4718987f-a78a-4631-a72c-99a9b5129fcf","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"fb649fd0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c952f08c-e727-4708-b0ff-f0c9f9e31095\" in room \"http://localhost/rooms/ae4cfa3a-8297-4e7c-8558-ad9713b13653\"","requestID":"fb649fd0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"fb649fd0-782a-11ef-938d-0b888d58857d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cf0cf51d066e338b966a7ab763acbb7a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"cf0cf51d066e338b966a7ab763acbb7a","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"fb651500-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0f766a43-d937-4e7a-b460-80629ef6ff35\" in room \"http://localhost/rooms/ae4cfa3a-8297-4e7c-8558-ad9713b13653\"","requestID":"fb651500-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"fb651500-782a-11ef-938d-0b888d58857d"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/4718987f-a78a-4631-a72c-99a9b5129fcf"}}},"level":"info","message":"received a callback","requestID":"cf0cf51d066e338b966a7ab763acbb7a"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c952f08c-e727-4708-b0ff-f0c9f9e31095\" in room \"http://localhost/rooms/ae4cfa3a-8297-4e7c-8558-ad9713b13653\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c952f08c-e727-4708-b0ff-f0c9f9e31095\" in room \"http://localhost/rooms/ae4cfa3a-8297-4e7c-8558-ad9713b13653\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c952f08c-e727-4708-b0ff-f0c9f9e31095\" in room \"http://localhost/rooms/ae4cfa3a-8297-4e7c-8558-ad9713b13653\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c952f08c-e727-4708-b0ff-f0c9f9e31095\" in room \"http://localhost/rooms/ae4cfa3a-8297-4e7c-8558-ad9713b13653\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c952f08c-e727-4708-b0ff-f0c9f9e31095\" in room \"http://localhost/rooms/ae4cfa3a-8297-4e7c-8558-ad9713b13653\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c952f08c-e727-4708-b0ff-f0c9f9e31095\" in room \"http://localhost/rooms/ae4cfa3a-8297-4e7c-8558-ad9713b13653\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c952f08c-e727-4708-b0ff-f0c9f9e31095\" in room \"http://localhost/rooms/ae4cfa3a-8297-4e7c-8558-ad9713b13653\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c952f08c-e727-4708-b0ff-f0c9f9e31095\" in room \"http://localhost/rooms/ae4cfa3a-8297-4e7c-8558-ad9713b13653\""} device-1 | {"data":{"peerconnection":"4718987f-a78a-4631-a72c-99a9b5129fcf","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"cf0cf51d066e338b966a7ab763acbb7a","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"cf0cf51d066e338b966a7ab763acbb7a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"f6906d1f785a63b5a108a713683d420d"} device-1 | {"data":{"peerconnection":"4718987f-a78a-4631-a72c-99a9b5129fcf","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fb695ac0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":987,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa562fda4-78b7-49e8-99b4-e8776f9219d1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6c236124-385e-4eef-9496-027c3b9a9170","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.3763018} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":987,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.507197,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fb695ac0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fb695ac0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/4718987f-a78a-4631-a72c-99a9b5129fcf' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4718987f-a78a-4631-a72c-99a9b5129fcf","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fb695ac0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a562fda4-78b7-49e8-99b4-e8776f9219d1/signaling 200 12ms","method":"POST","requestID":"fb695ac0-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a8ad250e3f07885d2d4aebf3afd7d12f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a8ad250e3f07885d2d4aebf3afd7d12f","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fb6b7da0-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/4718987f-a78a-4631-a72c-99a9b5129fcf"}}},"level":"info","message":"received a callback","requestID":"a8ad250e3f07885d2d4aebf3afd7d12f"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":988,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700b7c87-daa4-4d01-8855-d7646bf4b217","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cd6b052a-0288-49ff-9980-82db65171265","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.391636} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"fb6c40f0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":988,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.152347,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fb6b7da0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fb6b7da0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":989,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fb6b7da0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/700b7c87-daa4-4d01-8855-d7646bf4b217/signaling 200 10ms","method":"POST","requestID":"fb6b7da0-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/700b7c87-daa4-4d01-8855-d7646bf4b217/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4718987f-a78a-4631-a72c-99a9b5129fcf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6a61d481-6a0b-44a9-85b1-c32d836b9bc1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.3973901} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":989,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.556274,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4718987f-a78a-4631-a72c-99a9b5129fcf","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fb6c40f0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/4718987f-a78a-4631-a72c-99a9b5129fcf","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fb6c40f0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"fb6c40f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/4718987f-a78a-4631-a72c-99a9b5129fcf 200 9ms","method":"GET","requestID":"fb6c40f0-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/peerconnections/4718987f-a78a-4631-a72c-99a9b5129fcf"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 27ms","method":"POST","requestID":"a8ad250e3f07885d2d4aebf3afd7d12f","responseTime":27,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.030","http_referrer":"","http_user_agent":"node-fetch","requestID":"a8ad250e3f07885d2d4aebf3afd7d12f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fb6f9c50-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":990,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700b7c87-daa4-4d01-8855-d7646bf4b217","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8f8f849f-3be3-4886-bb63-d6372ff698fa","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.4187367} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":990,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.350878,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fb6f9c50-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fb6f9c50-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fb6f9c50-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/700b7c87-daa4-4d01-8855-d7646bf4b217/signaling 200 10ms","method":"POST","requestID":"fb6f9c50-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/700b7c87-daa4-4d01-8855-d7646bf4b217/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fb714a00-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":991,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa562fda4-78b7-49e8-99b4-e8776f9219d1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bca9b16a-6df1-476c-affd-d5c2dd559e2f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.4291933} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":991,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.456261,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fb714a00-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fb714a00-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fb714a00-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a562fda4-78b7-49e8-99b4-e8776f9219d1/signaling 200 9ms","method":"POST","requestID":"fb714a00-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24","level":"info","message":"auth send jwt","requestID":"c1beb01c63a1f65e5dd8eb3e7e97952a"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c1beb01c63a1f65e5dd8eb3e7e97952a","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c","requestID":"c1beb01c63a1f65e5dd8eb3e7e97952a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":992,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":992,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.964842,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c1beb01c63a1f65e5dd8eb3e7e97952a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931147,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c1beb01c63a1f65e5dd8eb3e7e97952a","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c","requestID":"c1beb01c63a1f65e5dd8eb3e7e97952a"} experiment-1 | {"level":"info","message":"GET /experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c 200 14ms","method":"GET","requestID":"c1beb01c63a1f65e5dd8eb3e7e97952a","responseTime":14,"status":200,"url":"/experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c"} gateway-1 | {"time_local":"21/Sep/2024:15:05:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c1beb01c63a1f65e5dd8eb3e7e97952a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24","level":"info","message":"auth send jwt","requestID":"f0b426003c12d3f8e3549addb88ed462"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f0b426003c12d3f8e3549addb88ed462","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c","requestID":"f0b426003c12d3f8e3549addb88ed462"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":993,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":993,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.205628,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f0b426003c12d3f8e3549addb88ed462","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931147,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f0b426003c12d3f8e3549addb88ed462","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c"},"level":"info","message":"Attempting to finish experiment","requestID":"f0b426003c12d3f8e3549addb88ed462"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"fb7ae6f0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":994,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":994,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.877357,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4718987f-a78a-4631-a72c-99a9b5129fcf","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fb7ae6f0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/4718987f-a78a-4631-a72c-99a9b5129fcf","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931147,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fb7ae6f0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:05:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/ae4cfa3a-8297-4e7c-8558-ad9713b13653?id=c952f08c-e727-4708-b0ff-f0c9f9e31095 HTTP/1.1","status": "101","body_bytes_sent":"872","request_time":"0.159","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"fe352270267ff8aaed8b10eb4347ab27"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"c952f08c-e727-4708-b0ff-f0c9f9e31095\" in room \"http://localhost/rooms/ae4cfa3a-8297-4e7c-8558-ad9713b13653\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"c952f08c-e727-4708-b0ff-f0c9f9e31095\" from room \"http://localhost/rooms/ae4cfa3a-8297-4e7c-8558-ad9713b13653\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/4718987f-a78a-4631-a72c-99a9b5129fcf","device":"a562fda4-78b7-49e8-99b4-e8776f9219d1","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"0f766a43-d937-4e7a-b460-80629ef6ff35\" in room \"http://localhost/rooms/ae4cfa3a-8297-4e7c-8558-ad9713b13653\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/4718987f-a78a-4631-a72c-99a9b5129fcf' to 'http://localhost/callbacks/experiment'"} gateway-1 | {"time_local":"21/Sep/2024:15:05:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/ae4cfa3a-8297-4e7c-8558-ad9713b13653?id=0f766a43-d937-4e7a-b460-80629ef6ff35 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.158","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"7d83e582a590bae191a7c9fa8eff517d"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/4718987f-a78a-4631-a72c-99a9b5129fcf' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4718987f-a78a-4631-a72c-99a9b5129fcf","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"0f766a43-d937-4e7a-b460-80629ef6ff35\" from room \"http://localhost/rooms/ae4cfa3a-8297-4e7c-8558-ad9713b13653\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f701ac1bd5b539c6e43c44f3f2d86ae6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f701ac1bd5b539c6e43c44f3f2d86ae6","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"220da5cb55a806adef22f8a8a8af514a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4718987f-a78a-4631-a72c-99a9b5129fcf': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4718987f-a78a-4631-a72c-99a9b5129fcf","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"59ae46bc-b75c-4db3-8bda-fa01435f0e0e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.5058677} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"220da5cb55a806adef22f8a8a8af514a","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1b1d3901-4e86-4896-8023-b116f284367a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.506185} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/4718987f-a78a-4631-a72c-99a9b5129fcf"}}},"level":"info","message":"received a callback","requestID":"f701ac1bd5b539c6e43c44f3f2d86ae6"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"fb7ae6f0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/4718987f-a78a-4631-a72c-99a9b5129fcf"}}},"level":"info","message":"received a callback","requestID":"220da5cb55a806adef22f8a8a8af514a"} device-1 | {"data":{"peerconnection":"4718987f-a78a-4631-a72c-99a9b5129fcf","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"fb7ae6f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/4718987f-a78a-4631-a72c-99a9b5129fcf 204 37ms","method":"DELETE","requestID":"fb7ae6f0-782a-11ef-88d4-5fea3f61bb98","responseTime":37,"status":204,"url":"/peerconnections/4718987f-a78a-4631-a72c-99a9b5129fcf"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c"},"level":"info","message":"Successfully finished experiment","requestID":"f0b426003c12d3f8e3549addb88ed462"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fb834b60-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":995,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700b7c87-daa4-4d01-8855-d7646bf4b217","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a69db0ae-2674-4bfb-bd75-cd5b77d14d3f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.5467596} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":995,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.304674,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fb834b60-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fb834b60-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fb834b60-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/700b7c87-daa4-4d01-8855-d7646bf4b217/signaling 200 10ms","method":"POST","requestID":"fb834b60-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/700b7c87-daa4-4d01-8855-d7646bf4b217/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F718488b0-1af1-42ff-affe-e54f4d5b9f4c': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F718488b0-1af1-42ff-affe-e54f4d5b9f4c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"c890732c-853b-4312-8ce1-b8fd56d1ee49","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.5535977} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"75019368-ba3b-4100-8e57-6c85bf16055a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.5538151} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fb852020-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"f0b426003c12d3f8e3549addb88ed462","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":996,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa562fda4-78b7-49e8-99b4-e8776f9219d1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e648d17d-057e-4f75-a6b7-04fa2e69cf1d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.5590627} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":996,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.581884,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fb852020-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fb852020-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fb852020-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a562fda4-78b7-49e8-99b4-e8776f9219d1/signaling 200 9ms","method":"POST","requestID":"fb852020-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c","requestID":"f0b426003c12d3f8e3549addb88ed462"} gateway-1 | {"time_local":"21/Sep/2024:15:05:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.140","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f0b426003c12d3f8e3549addb88ed462"} experiment-1 | {"level":"info","message":"DELETE /experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c 204 136ms","method":"DELETE","requestID":"f0b426003c12d3f8e3549addb88ed462","responseTime":136,"status":204,"url":"/experiments/718488b0-1af1-42ff-affe-e54f4d5b9f4c"} gateway-1 | {"time_local":"21/Sep/2024:15:05:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1782","request_time":"2.102","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"6da231e225ee21aa467474ffe22cc8cd"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 107ms","method":"POST","requestID":"f701ac1bd5b539c6e43c44f3f2d86ae6","responseTime":107,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.111","http_referrer":"","http_user_agent":"node-fetch","requestID":"f701ac1bd5b539c6e43c44f3f2d86ae6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 106ms","method":"POST","requestID":"220da5cb55a806adef22f8a8a8af514a","responseTime":106,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.111","http_referrer":"","http_user_agent":"node-fetch","requestID":"220da5cb55a806adef22f8a8a8af514a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24","level":"info","message":"auth send jwt","requestID":"ffa6100dc2bcfa6bde67b6cd505efd23"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ffa6100dc2bcfa6bde67b6cd505efd23","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ffa6100dc2bcfa6bde67b6cd505efd23"} gateway-1 | {"time_local":"21/Sep/2024:15:05:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2107","request_time":"0.613","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"04167c640c110dc36497beb50c345d39"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":997,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":997,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.791624,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ffa6100dc2bcfa6bde67b6cd505efd23","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931147,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ffa6100dc2bcfa6bde67b6cd505efd23","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/700b7c87-daa4-4d01-8855-d7646bf4b217' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F340429df-a5f5-43fe-9559-229612381299","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"39bdc86b-6b5c-4074-8bac-8a9f0c40a662","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.6353524} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ffa6100dc2bcfa6bde67b6cd505efd23","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a562fda4-78b7-49e8-99b4-e8776f9219d1' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"900f1ebf-1c0c-4633-a62a-6629cd1ff407","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.6412458} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ffa6100dc2bcfa6bde67b6cd505efd23","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F340429df-a5f5-43fe-9559-229612381299","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"664ae0f3-1717-4b45-8f2f-2fff3eeec7b0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.6516228} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c61d85cb-5c57-428f-83ab-9c88d7c9daff","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.6518674} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"ffa6100dc2bcfa6bde67b6cd505efd23","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F340429df-a5f5-43fe-9559-229612381299","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F340429df-a5f5-43fe-9559-229612381299","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:47.651582201Z"}]},"request_id":"26e4e6d5-a6e6-46be-9fb2-28d1dd1e13d5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.6569993} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ffa6100dc2bcfa6bde67b6cd505efd23","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ffa6100dc2bcfa6bde67b6cd505efd23"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"ffa6100dc2bcfa6bde67b6cd505efd23","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ffa6100dc2bcfa6bde67b6cd505efd23"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24","level":"info","message":"auth send jwt","requestID":"a6f3cf22d18f97dce6dbf36fcab7620c"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a6f3cf22d18f97dce6dbf36fcab7620c","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a6f3cf22d18f97dce6dbf36fcab7620c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":998,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":998,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.758908,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a6f3cf22d18f97dce6dbf36fcab7620c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931147,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0N30.Dm58_y8gTcfAEsOWj98GSmq1HH-xnb41uSzZY3_vv24"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a6f3cf22d18f97dce6dbf36fcab7620c","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57d9ba66-4928-4561-b339-69ac0b47011c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ac6fdba5-e48a-45b2-a932-b23ab24256c6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.6870365} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a6f3cf22d18f97dce6dbf36fcab7620c","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"63051be6-4ae3-4fae-ab85-074115a69907","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.6916835} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"a6f3cf22d18f97dce6dbf36fcab7620c","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57d9ba66-4928-4561-b339-69ac0b47011c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"d3647774-46ea-4811-9295-881ca3c143b2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.7022061} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6ec909a7-0e48-478f-aa6b-28ec828e6d3c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.7023096} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"a6f3cf22d18f97dce6dbf36fcab7620c","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57d9ba66-4928-4561-b339-69ac0b47011c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57d9ba66-4928-4561-b339-69ac0b47011c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:47.702167731Z"}]},"request_id":"41a3bd2c-ad05-4155-8502-9b703cdd31e7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931147.7065632} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a6f3cf22d18f97dce6dbf36fcab7620c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a6f3cf22d18f97dce6dbf36fcab7620c"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"a6f3cf22d18f97dce6dbf36fcab7620c","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a6f3cf22d18f97dce6dbf36fcab7620c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0OH0._VJy7xwHxKMRVGDixPVwwgVRPy58Ss8mdOtgNF6Ecuo","level":"info","message":"auth send jwt","requestID":"5bf46391cc5d9ab15facc29b4f400436"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5bf46391cc5d9ab15facc29b4f400436","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5bf46391cc5d9ab15facc29b4f400436"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":999,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:48Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":999,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.098845,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/340429df-a5f5-43fe-9559-229612381299","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"5bf46391cc5d9ab15facc29b4f400436","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/340429df-a5f5-43fe-9559-229612381299","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931148,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0OH0._VJy7xwHxKMRVGDixPVwwgVRPy58Ss8mdOtgNF6Ecuo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5bf46391cc5d9ab15facc29b4f400436","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F340429df-a5f5-43fe-9559-229612381299","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F340429df-a5f5-43fe-9559-229612381299","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:47.651582201Z"}]},"request_id":"5cf59c4f-bfe9-49cf-bb51-a9952637e0ce","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931148.1906066} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5bf46391cc5d9ab15facc29b4f400436","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d3d5034d-3c14-4398-b7c9-01f51dfe631a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931148.1966596} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"5bf46391cc5d9ab15facc29b4f400436","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F340429df-a5f5-43fe-9559-229612381299","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F340429df-a5f5-43fe-9559-229612381299","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:47.651582201Z"}]},"request_id":"0491fbd5-6c58-46b2-92c5-297818fd7fc9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931148.2101529} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5bf46391cc5d9ab15facc29b4f400436","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5bf46391cc5d9ab15facc29b4f400436"} gateway-1 | {"time_local":"21/Sep/2024:15:05:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/340429df-a5f5-43fe-9559-229612381299 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"5bf46391cc5d9ab15facc29b4f400436"} device-1 | {"level":"info","message":"PATCH /devices/340429df-a5f5-43fe-9559-229612381299 200 34ms","method":"PATCH","requestID":"5bf46391cc5d9ab15facc29b4f400436","responseTime":34,"status":200,"url":"/devices/340429df-a5f5-43fe-9559-229612381299"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0OH0._VJy7xwHxKMRVGDixPVwwgVRPy58Ss8mdOtgNF6Ecuo","level":"info","message":"auth send jwt","requestID":"6d56a438111996dc1fce5c9a816f6e92"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6d56a438111996dc1fce5c9a816f6e92","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6d56a438111996dc1fce5c9a816f6e92"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1000,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:48Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1000,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.698619,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/340429df-a5f5-43fe-9559-229612381299","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"6d56a438111996dc1fce5c9a816f6e92","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/340429df-a5f5-43fe-9559-229612381299","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931148,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0OH0._VJy7xwHxKMRVGDixPVwwgVRPy58Ss8mdOtgNF6Ecuo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6d56a438111996dc1fce5c9a816f6e92","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6d56a438111996dc1fce5c9a816f6e92"} device-1 | {"level":"info","message":"POST /devices/340429df-a5f5-43fe-9559-229612381299/websocket 200 22ms","method":"POST","requestID":"6d56a438111996dc1fce5c9a816f6e92","responseTime":22,"status":200,"url":"/devices/340429df-a5f5-43fe-9559-229612381299/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:05:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/340429df-a5f5-43fe-9559-229612381299/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"6d56a438111996dc1fce5c9a816f6e92"} device-1 | {"level":"info","message":"device 'http://localhost/devices/340429df-a5f5-43fe-9559-229612381299' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b6207e9e7df5bb00322b1fb5d075c6d5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b6207e9e7df5bb00322b1fb5d075c6d5","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/57d9ba66-4928-4561-b339-69ac0b47011c/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b6207e9e7df5bb00322b1fb5d075c6d5"} device-1 | {"level":"info","message":"OPTIONS /devices/57d9ba66-4928-4561-b339-69ac0b47011c/websocket 200 1ms","method":"OPTIONS","requestID":"b6207e9e7df5bb00322b1fb5d075c6d5","responseTime":1,"status":200,"url":"/devices/57d9ba66-4928-4561-b339-69ac0b47011c/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0OX0.Ybrys1ZDleCjotY5JH5B2KQnwqv2OgJ5SeGVgzl2Idw","level":"info","message":"auth send jwt","requestID":"9d5fecc1b201240d9e49f7eaa9c80fc1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9d5fecc1b201240d9e49f7eaa9c80fc1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9d5fecc1b201240d9e49f7eaa9c80fc1"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1001,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:49Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1001,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.144318,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:49Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"9d5fecc1b201240d9e49f7eaa9c80fc1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931149,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0OX0.Ybrys1ZDleCjotY5JH5B2KQnwqv2OgJ5SeGVgzl2Idw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9d5fecc1b201240d9e49f7eaa9c80fc1","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9d5fecc1b201240d9e49f7eaa9c80fc1"} gateway-1 | {"time_local":"21/Sep/2024:15:05:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/57d9ba66-4928-4561-b339-69ac0b47011c/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9d5fecc1b201240d9e49f7eaa9c80fc1"} device-1 | {"level":"info","message":"POST /devices/57d9ba66-4928-4561-b339-69ac0b47011c/websocket 200 22ms","method":"POST","requestID":"9d5fecc1b201240d9e49f7eaa9c80fc1","responseTime":22,"status":200,"url":"/devices/57d9ba66-4928-4561-b339-69ac0b47011c/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5d35965bc31c445184a8ca0a76e97737","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5d35965bc31c445184a8ca0a76e97737","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/57d9ba66-4928-4561-b339-69ac0b47011c? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5d35965bc31c445184a8ca0a76e97737"} device-1 | {"level":"info","message":"OPTIONS /devices/57d9ba66-4928-4561-b339-69ac0b47011c? 200 1ms","method":"OPTIONS","requestID":"5d35965bc31c445184a8ca0a76e97737","responseTime":1,"status":200,"url":"/devices/57d9ba66-4928-4561-b339-69ac0b47011c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0OX0.Ybrys1ZDleCjotY5JH5B2KQnwqv2OgJ5SeGVgzl2Idw","level":"info","message":"auth send jwt","requestID":"e792a9e9f080129fc7593c5d976035ab"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e792a9e9f080129fc7593c5d976035ab","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e792a9e9f080129fc7593c5d976035ab"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1002,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:49Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1002,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.307777,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:49Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e792a9e9f080129fc7593c5d976035ab","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931149,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0OX0.Ybrys1ZDleCjotY5JH5B2KQnwqv2OgJ5SeGVgzl2Idw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e792a9e9f080129fc7593c5d976035ab","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57d9ba66-4928-4561-b339-69ac0b47011c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57d9ba66-4928-4561-b339-69ac0b47011c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:47.702167731Z"}]},"request_id":"5cc250a3-6bb9-456e-8622-177225713f8c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931149.8284702} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e792a9e9f080129fc7593c5d976035ab","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3cbe3293-7342-4ab5-97b3-c4b698e0072a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931149.836131} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"e792a9e9f080129fc7593c5d976035ab","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57d9ba66-4928-4561-b339-69ac0b47011c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57d9ba66-4928-4561-b339-69ac0b47011c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:47.702167731Z"}]},"request_id":"5e6f5de8-b902-4a9c-9155-2d9c36f91f77","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931149.8491073} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"e792a9e9f080129fc7593c5d976035ab","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e792a9e9f080129fc7593c5d976035ab"} gateway-1 | {"time_local":"21/Sep/2024:15:05:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/57d9ba66-4928-4561-b339-69ac0b47011c? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.046","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e792a9e9f080129fc7593c5d976035ab"} device-1 | {"level":"info","message":"PATCH /devices/57d9ba66-4928-4561-b339-69ac0b47011c? 200 39ms","method":"PATCH","requestID":"e792a9e9f080129fc7593c5d976035ab","responseTime":39,"status":200,"url":"/devices/57d9ba66-4928-4561-b339-69ac0b47011c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0OX0.Ybrys1ZDleCjotY5JH5B2KQnwqv2OgJ5SeGVgzl2Idw","level":"info","message":"auth send jwt","requestID":"1066d7cde6038457b7452ab931a1eb66"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1066d7cde6038457b7452ab931a1eb66","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1066d7cde6038457b7452ab931a1eb66"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1003,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:49Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1003,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.237165,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/340429df-a5f5-43fe-9559-229612381299","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1066d7cde6038457b7452ab931a1eb66","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/340429df-a5f5-43fe-9559-229612381299","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931149,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0OX0.Ybrys1ZDleCjotY5JH5B2KQnwqv2OgJ5SeGVgzl2Idw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1066d7cde6038457b7452ab931a1eb66","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F340429df-a5f5-43fe-9559-229612381299","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F340429df-a5f5-43fe-9559-229612381299","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:47.651582201Z"}]},"request_id":"b80ab3de-311d-42b8-96f0-fdf3c9f6b6af","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931149.881429} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"1066d7cde6038457b7452ab931a1eb66","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1066d7cde6038457b7452ab931a1eb66"} gateway-1 | {"time_local":"21/Sep/2024:15:05:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/340429df-a5f5-43fe-9559-229612381299? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1066d7cde6038457b7452ab931a1eb66"} device-1 | {"level":"info","message":"GET /devices/340429df-a5f5-43fe-9559-229612381299? 200 19ms","method":"GET","requestID":"1066d7cde6038457b7452ab931a1eb66","responseTime":19,"status":200,"url":"/devices/340429df-a5f5-43fe-9559-229612381299?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0OX0.Ybrys1ZDleCjotY5JH5B2KQnwqv2OgJ5SeGVgzl2Idw","level":"info","message":"auth send jwt","requestID":"1f262d2b40ef2947d128f935fd561189"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1f262d2b40ef2947d128f935fd561189","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1f262d2b40ef2947d128f935fd561189"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1004,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:49Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1004,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.473315,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1f262d2b40ef2947d128f935fd561189","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931149,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0OX0.Ybrys1ZDleCjotY5JH5B2KQnwqv2OgJ5SeGVgzl2Idw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1f262d2b40ef2947d128f935fd561189","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57d9ba66-4928-4561-b339-69ac0b47011c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57d9ba66-4928-4561-b339-69ac0b47011c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:47.702167731Z"}]},"request_id":"7381419b-b4c0-467d-9094-ee7042678791","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931149.9068985} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1f262d2b40ef2947d128f935fd561189","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1f262d2b40ef2947d128f935fd561189"} gateway-1 | {"time_local":"21/Sep/2024:15:05:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/57d9ba66-4928-4561-b339-69ac0b47011c? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1f262d2b40ef2947d128f935fd561189"} device-1 | {"level":"info","message":"GET /devices/57d9ba66-4928-4561-b339-69ac0b47011c? 200 18ms","method":"GET","requestID":"1f262d2b40ef2947d128f935fd561189","responseTime":18,"status":200,"url":"/devices/57d9ba66-4928-4561-b339-69ac0b47011c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0OX0.Ybrys1ZDleCjotY5JH5B2KQnwqv2OgJ5SeGVgzl2Idw","level":"info","message":"auth send jwt","requestID":"a7affcb99c51aaea2169281a8080ab50"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a7affcb99c51aaea2169281a8080ab50","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"a7affcb99c51aaea2169281a8080ab50"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1005,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:49Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1005,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.381601,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a7affcb99c51aaea2169281a8080ab50","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931149,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0OX0.Ybrys1ZDleCjotY5JH5B2KQnwqv2OgJ5SeGVgzl2Idw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a7affcb99c51aaea2169281a8080ab50","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b"},"level":"info","message":"Attempting to run experiment","requestID":"a7affcb99c51aaea2169281a8080ab50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b"},"level":"info","message":"Attempting to book experiment","requestID":"a7affcb99c51aaea2169281a8080ab50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b"},"level":"info","message":"Successfully booked experiment","requestID":"a7affcb99c51aaea2169281a8080ab50"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fcf44080-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fcf48ea0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1006,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:49Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1007,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:49Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1006,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.697762,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/340429df-a5f5-43fe-9559-229612381299","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fcf44080-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/340429df-a5f5-43fe-9559-229612381299","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931149,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0OX0.Ybrys1ZDleCjotY5JH5B2KQnwqv2OgJ5SeGVgzl2Idw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fcf44080-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1007,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.145408,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fcf48ea0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931149,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0OX0.Ybrys1ZDleCjotY5JH5B2KQnwqv2OgJ5SeGVgzl2Idw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fcf48ea0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F340429df-a5f5-43fe-9559-229612381299","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F340429df-a5f5-43fe-9559-229612381299","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:47.651582201Z"}]},"request_id":"dd71d8f0-5fec-44fc-ae93-cd48dbcda3c4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931149.9731326} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"fcf44080-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57d9ba66-4928-4561-b339-69ac0b47011c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57d9ba66-4928-4561-b339-69ac0b47011c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:47.702167731Z"}]},"request_id":"58a91a99-8888-425a-8ceb-4fb18cb1829c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931149.9751637} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"fcf48ea0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fcf44080-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/340429df-a5f5-43fe-9559-229612381299? 200 25ms","method":"GET","requestID":"fcf44080-782a-11ef-88d4-5fea3f61bb98","responseTime":25,"status":200,"url":"/devices/340429df-a5f5-43fe-9559-229612381299?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fcf48ea0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/57d9ba66-4928-4561-b339-69ac0b47011c? 200 25ms","method":"GET","requestID":"fcf48ea0-782a-11ef-88d4-5fea3f61bb98","responseTime":25,"status":200,"url":"/devices/57d9ba66-4928-4561-b339-69ac0b47011c?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b"},"level":"info","message":"Setting up experiment","requestID":"a7affcb99c51aaea2169281a8080ab50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"a7affcb99c51aaea2169281a8080ab50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b"},"level":"info","message":"Successfully locked booking for experiment","requestID":"a7affcb99c51aaea2169281a8080ab50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"a7affcb99c51aaea2169281a8080ab50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"a7affcb99c51aaea2169281a8080ab50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b"},"level":"info","message":"Attempting to update booking for experiment","requestID":"a7affcb99c51aaea2169281a8080ab50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b"},"level":"info","message":"Successfully updated booking for experiment","requestID":"a7affcb99c51aaea2169281a8080ab50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b"},"level":"info","message":"Successfully set up experiment","requestID":"a7affcb99c51aaea2169281a8080ab50"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fd002760-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fd007580-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b"},"level":"info","message":"Successfully running experiment","requestID":"a7affcb99c51aaea2169281a8080ab50"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fd00c3a0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1008,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1008,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.53086,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1009,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/340429df-a5f5-43fe-9559-229612381299","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fd002760-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/340429df-a5f5-43fe-9559-229612381299","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931149,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0OX0.Ybrys1ZDleCjotY5JH5B2KQnwqv2OgJ5SeGVgzl2Idw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fd002760-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1009,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.610219,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fd007580-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931149,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0OX0.Ybrys1ZDleCjotY5JH5B2KQnwqv2OgJ5SeGVgzl2Idw"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"fd007580-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1010,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1010,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.264818,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F340429df-a5f5-43fe-9559-229612381299","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b94fd108-c558-4a88-bfcf-7bf9db9b0ea4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.0523067} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/340429df-a5f5-43fe-9559-229612381299","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fd00c3a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/340429df-a5f5-43fe-9559-229612381299","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"fd00c3a0-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F340429df-a5f5-43fe-9559-229612381299","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F340429df-a5f5-43fe-9559-229612381299","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:47.651582201Z"}]},"request_id":"6888a1af-f369-405e-9942-282fe6c51ba1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.054296} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57d9ba66-4928-4561-b339-69ac0b47011c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57d9ba66-4928-4561-b339-69ac0b47011c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:47.702167731Z"}]},"request_id":"73de4133-cdbf-4695-b58a-22be833295a8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.059304} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"fd002760-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"fd007580-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fd002760-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F983a3fc0-ad79-4c08-a138-655d7ee65b7b#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F983a3fc0-ad79-4c08-a138-655d7ee65b7b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"f1809342-c70d-4125-951d-09315ea6467e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.0679226} device-1 | {"level":"info","message":"GET /devices/340429df-a5f5-43fe-9559-229612381299? 200 31ms","method":"GET","requestID":"fd002760-782a-11ef-88d4-5fea3f61bb98","responseTime":31,"status":200,"url":"/devices/340429df-a5f5-43fe-9559-229612381299?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fd00c3a0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2d865aab-99f1-4322-b7da-1e492a692f8a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.0683959} device-1 | {"level":"info","message":"POST /devices/340429df-a5f5-43fe-9559-229612381299/signaling 200 27ms","method":"POST","requestID":"fd00c3a0-782a-11ef-88d4-5fea3f61bb98","responseTime":27,"status":200,"url":"/devices/340429df-a5f5-43fe-9559-229612381299/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"a7affcb99c51aaea2169281a8080ab50","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fd007580-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/57d9ba66-4928-4561-b339-69ac0b47011c? 200 30ms","method":"GET","requestID":"fd007580-782a-11ef-88d4-5fea3f61bb98","responseTime":30,"status":200,"url":"/devices/57d9ba66-4928-4561-b339-69ac0b47011c?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fd053070-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1011,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:50Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fd061ad0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57d9ba66-4928-4561-b339-69ac0b47011c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2814f51e-0712-4566-b037-5ee6d813bae6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.0778441} experiment-1 | {"data":{"experiment":"http://localhost/experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"a7affcb99c51aaea2169281a8080ab50"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1011,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.880271,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1012,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:50Z"} gateway-1 | {"time_local":"21/Sep/2024:15:05:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.166","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a7affcb99c51aaea2169281a8080ab50"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fd053070-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} experiment-1 | {"level":"info","message":"POST /experiments? 201 161ms","method":"POST","requestID":"a7affcb99c51aaea2169281a8080ab50","responseTime":161,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"fd053070-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F340429df-a5f5-43fe-9559-229612381299","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2f4e699d-f2ed-4e57-85f1-3788c420b8eb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.082111} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1012,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.99692,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/340429df-a5f5-43fe-9559-229612381299","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fd061ad0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/340429df-a5f5-43fe-9559-229612381299","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fd053070-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fd061ad0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/57d9ba66-4928-4561-b339-69ac0b47011c/signaling 200 13ms","method":"POST","requestID":"fd053070-782a-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/57d9ba66-4928-4561-b339-69ac0b47011c/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1MH0._aRxNaDXLKayyHu4maUonsbWxEpSikrIZb8OPD-E4-E","level":"info","message":"auth send jwt","requestID":"8f27f2d2538013ff807213695ee0b2cb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8f27f2d2538013ff807213695ee0b2cb","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8f27f2d2538013ff807213695ee0b2cb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fd061ad0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1013,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:50Z"} device-1 | {"level":"info","message":"POST /devices/340429df-a5f5-43fe-9559-229612381299/signaling 200 14ms","method":"POST","requestID":"fd061ad0-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/340429df-a5f5-43fe-9559-229612381299/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1013,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.504818,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/340429df-a5f5-43fe-9559-229612381299","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"8f27f2d2538013ff807213695ee0b2cb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/340429df-a5f5-43fe-9559-229612381299","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931150,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1MH0._aRxNaDXLKayyHu4maUonsbWxEpSikrIZb8OPD-E4-E"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fd08b2e0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8f27f2d2538013ff807213695ee0b2cb","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1014,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F340429df-a5f5-43fe-9559-229612381299","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F340429df-a5f5-43fe-9559-229612381299","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:47.651582201Z"}]},"request_id":"21e2440e-aa35-4bb2-8050-8cff5fee791b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.0980554} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8f27f2d2538013ff807213695ee0b2cb","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57d9ba66-4928-4561-b339-69ac0b47011c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"143381c3-c3e1-4437-950b-a44b57ca0357","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.098688} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1014,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.170895,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fd08b2e0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fd08b2e0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8f27f2d2538013ff807213695ee0b2cb"} gateway-1 | {"time_local":"21/Sep/2024:15:05:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/340429df-a5f5-43fe-9559-229612381299? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8f27f2d2538013ff807213695ee0b2cb"} device-1 | {"level":"info","message":"GET /devices/340429df-a5f5-43fe-9559-229612381299? 200 17ms","method":"GET","requestID":"8f27f2d2538013ff807213695ee0b2cb","responseTime":17,"status":200,"url":"/devices/340429df-a5f5-43fe-9559-229612381299?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fd08b2e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/57d9ba66-4928-4561-b339-69ac0b47011c/signaling 200 11ms","method":"POST","requestID":"fd08b2e0-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/57d9ba66-4928-4561-b339-69ac0b47011c/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"a7affcb99c51aaea2169281a8080ab50"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fd0aaeb0-782a-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1MH0._aRxNaDXLKayyHu4maUonsbWxEpSikrIZb8OPD-E4-E","level":"info","message":"auth send jwt","requestID":"bb976ae1ee41acab821dbccf632757b3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bb976ae1ee41acab821dbccf632757b3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fd0afcd0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bb976ae1ee41acab821dbccf632757b3"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1015,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1015,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.791176,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/340429df-a5f5-43fe-9559-229612381299","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fd0aaeb0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/340429df-a5f5-43fe-9559-229612381299","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931149,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0OX0.Ybrys1ZDleCjotY5JH5B2KQnwqv2OgJ5SeGVgzl2Idw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fd0aaeb0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1016,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1016,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.615819,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"client_addr":"127.0.0.1:59846","level":"info","msg":"Received request.","req_id":1017,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"client_addr":"127.0.0.1:59846","level":"info","msg":"Sent response.","req_id":1017,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.588837,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fd0afcd0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931149,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0OX0.Ybrys1ZDleCjotY5JH5B2KQnwqv2OgJ5SeGVgzl2Idw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fd0afcd0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bb976ae1ee41acab821dbccf632757b3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931150,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1MH0._aRxNaDXLKayyHu4maUonsbWxEpSikrIZb8OPD-E4-E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bb976ae1ee41acab821dbccf632757b3","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F340429df-a5f5-43fe-9559-229612381299","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F340429df-a5f5-43fe-9559-229612381299","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:47.651582201Z"}]},"request_id":"f39d03c4-e08d-4818-9c33-b19353f7394a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.1184232} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57d9ba66-4928-4561-b339-69ac0b47011c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57d9ba66-4928-4561-b339-69ac0b47011c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:47.702167731Z"}]},"request_id":"62d76c7b-5775-4e40-b0fe-0a3e7d51715a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.1190841} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fd0aaeb0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fd0afcd0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57d9ba66-4928-4561-b339-69ac0b47011c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57d9ba66-4928-4561-b339-69ac0b47011c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:47.702167731Z"}]},"request_id":"c09e3474-a114-47e1-a3b8-f9b7a9d3b1db","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.1199603} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bb976ae1ee41acab821dbccf632757b3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fd0afcd0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/57d9ba66-4928-4561-b339-69ac0b47011c? 200 16ms","method":"GET","requestID":"fd0afcd0-782a-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/57d9ba66-4928-4561-b339-69ac0b47011c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fd0aaeb0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/340429df-a5f5-43fe-9559-229612381299? 200 19ms","method":"GET","requestID":"fd0aaeb0-782a-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/340429df-a5f5-43fe-9559-229612381299?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bb976ae1ee41acab821dbccf632757b3"} device-1 | {"level":"info","message":"GET /devices/57d9ba66-4928-4561-b339-69ac0b47011c? 200 16ms","method":"GET","requestID":"bb976ae1ee41acab821dbccf632757b3","responseTime":16,"status":200,"url":"/devices/57d9ba66-4928-4561-b339-69ac0b47011c?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/57d9ba66-4928-4561-b339-69ac0b47011c? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bb976ae1ee41acab821dbccf632757b3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b"},"level":"info","message":"Building connection plan","requestID":"a7affcb99c51aaea2169281a8080ab50"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"5235af84-5812-4bf1-8c32-3b3da2921552"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"5f1aa9d8-2c7c-4f38-ac5d-84fccae7f77f"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"2f85e5b9-e74b-44f0-8517-8f0a67c29338"}]},"level":"info","message":"Built pairwise service configurations","requestID":"a7affcb99c51aaea2169281a8080ab50"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"fd0e0a10-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"fd0e0a10-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"fd0e0a10-782a-11ef-938d-0b888d58857d","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/665b2c2e-f1ee-455a-9b0f-45bd254d240e?id=2ce737e5-e233-41a8-a2ce-eed733b44652","ws://localhost/rooms/665b2c2e-f1ee-455a-9b0f-45bd254d240e?id=6406c857-14d9-4168-aaf7-3b260e02e2f6"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/340429df-a5f5-43fe-9559-229612381299"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"a7affcb99c51aaea2169281a8080ab50"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"fd0e7f40-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1018,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1018,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.812485,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fd0e7f40-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931149,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE0OX0.Ybrys1ZDleCjotY5JH5B2KQnwqv2OgJ5SeGVgzl2Idw"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"fd0e7f40-782a-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"aff5491a-5b92-444f-9e24-d6923438c3af","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.143915} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3d921e44-3100-4cda-8104-319881001387","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.144144} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"fd0e7f40-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"fd0e7f40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"fd0e7f40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/ee316901-b795-4812-9349-72f4346ebde6'","requestID":"fd0e7f40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/ee316901-b795-4812-9349-72f4346ebde6'","requestID":"fd0e7f40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"fd0e7f40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 26ms","method":"POST","requestID":"fd0e7f40-782a-11ef-88d4-5fea3f61bb98","responseTime":26,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"fd0e7f40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ee316901-b795-4812-9349-72f4346ebde6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ee316901-b795-4812-9349-72f4346ebde6","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"fd144ba0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"6406c857-14d9-4168-aaf7-3b260e02e2f6\" in room \"http://localhost/rooms/665b2c2e-f1ee-455a-9b0f-45bd254d240e\"","requestID":"fd144ba0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"fd144ba0-782a-11ef-938d-0b888d58857d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0183f1a9f4570fa21e076070ccdb59fa","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"fd14c0d0-782a-11ef-938d-0b888d58857d"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0183f1a9f4570fa21e076070ccdb59fa","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2ce737e5-e233-41a8-a2ce-eed733b44652\" in room \"http://localhost/rooms/665b2c2e-f1ee-455a-9b0f-45bd254d240e\"","requestID":"fd14c0d0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"fd14c0d0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2ce737e5-e233-41a8-a2ce-eed733b44652\" in room \"http://localhost/rooms/665b2c2e-f1ee-455a-9b0f-45bd254d240e\"","requestID":"fd14c0d0-782a-11ef-938d-0b888d58857d"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/340429df-a5f5-43fe-9559-229612381299"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/ee316901-b795-4812-9349-72f4346ebde6"}}},"level":"info","message":"received a callback","requestID":"0183f1a9f4570fa21e076070ccdb59fa"} device-1 | {"data":{"peerconnection":"ee316901-b795-4812-9349-72f4346ebde6","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"0183f1a9f4570fa21e076070ccdb59fa","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"0183f1a9f4570fa21e076070ccdb59fa"} device-1 | {"data":{"peerconnection":"ee316901-b795-4812-9349-72f4346ebde6","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"a7affcb99c51aaea2169281a8080ab50"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fd197bc0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1019,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F340429df-a5f5-43fe-9559-229612381299","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"36cb5403-64a4-41d8-8810-5a1e0e756a72","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.2092304} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1019,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.242214,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:50Z"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ee316901-b795-4812-9349-72f4346ebde6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ee316901-b795-4812-9349-72f4346ebde6","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/340429df-a5f5-43fe-9559-229612381299","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fd197bc0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/340429df-a5f5-43fe-9559-229612381299","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fd197bc0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e915eac2d3c7e8a13f29ab46c817fcf5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e915eac2d3c7e8a13f29ab46c817fcf5","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/340429df-a5f5-43fe-9559-229612381299"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/ee316901-b795-4812-9349-72f4346ebde6"}}},"level":"info","message":"received a callback","requestID":"e915eac2d3c7e8a13f29ab46c817fcf5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fd197bc0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/340429df-a5f5-43fe-9559-229612381299/signaling 200 11ms","method":"POST","requestID":"fd197bc0-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/340429df-a5f5-43fe-9559-229612381299/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fd1b7790-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1020,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:50Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"fd1becc0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57d9ba66-4928-4561-b339-69ac0b47011c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"667dfb9e-37e7-414f-af6b-0fd78d3ac134","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.2218041} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1020,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.558154,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1021,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fd1b7790-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fd1b7790-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fee316901-b795-4812-9349-72f4346ebde6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ae3ac58a-846b-47c3-990f-4946a8d3db5a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.2250028} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1021,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.734293,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ee316901-b795-4812-9349-72f4346ebde6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fd1becc0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/ee316901-b795-4812-9349-72f4346ebde6","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fd1becc0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fd1b7790-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/57d9ba66-4928-4561-b339-69ac0b47011c/signaling 200 11ms","method":"POST","requestID":"fd1b7790-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/57d9ba66-4928-4561-b339-69ac0b47011c/signaling"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"fd1becc0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/ee316901-b795-4812-9349-72f4346ebde6 200 9ms","method":"GET","requestID":"fd1becc0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/peerconnections/ee316901-b795-4812-9349-72f4346ebde6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"e915eac2d3c7e8a13f29ab46c817fcf5","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"e915eac2d3c7e8a13f29ab46c817fcf5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fd1fbd50-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1022,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57d9ba66-4928-4561-b339-69ac0b47011c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"810268d4-775b-496b-a6c4-4f040db0dacd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.2508762} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1022,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.716863,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fd1fbd50-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fd1fbd50-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fd1fbd50-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/57d9ba66-4928-4561-b339-69ac0b47011c/signaling 200 9ms","method":"POST","requestID":"fd1fbd50-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/57d9ba66-4928-4561-b339-69ac0b47011c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fd219210-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1023,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F340429df-a5f5-43fe-9559-229612381299","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9f039778-285c-4374-964e-e6c388737a6c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.263086} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1023,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.269152,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/340429df-a5f5-43fe-9559-229612381299","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fd219210-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/340429df-a5f5-43fe-9559-229612381299","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fd219210-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fd219210-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/340429df-a5f5-43fe-9559-229612381299/signaling 200 10ms","method":"POST","requestID":"fd219210-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/340429df-a5f5-43fe-9559-229612381299/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1MH0._aRxNaDXLKayyHu4maUonsbWxEpSikrIZb8OPD-E4-E","level":"info","message":"auth send jwt","requestID":"4196dc07aba3d7680b7be510c45d1b47"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4196dc07aba3d7680b7be510c45d1b47","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b","requestID":"4196dc07aba3d7680b7be510c45d1b47"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1024,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1024,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.063416,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"4196dc07aba3d7680b7be510c45d1b47","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931150,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1MH0._aRxNaDXLKayyHu4maUonsbWxEpSikrIZb8OPD-E4-E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4196dc07aba3d7680b7be510c45d1b47","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b","requestID":"4196dc07aba3d7680b7be510c45d1b47"} gateway-1 | {"time_local":"21/Sep/2024:15:05:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4196dc07aba3d7680b7be510c45d1b47"} experiment-1 | {"level":"info","message":"GET /experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b 200 10ms","method":"GET","requestID":"4196dc07aba3d7680b7be510c45d1b47","responseTime":10,"status":200,"url":"/experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1MH0._aRxNaDXLKayyHu4maUonsbWxEpSikrIZb8OPD-E4-E","level":"info","message":"auth send jwt","requestID":"96e451890c827eee11f079460a1518a9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"96e451890c827eee11f079460a1518a9","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b","requestID":"96e451890c827eee11f079460a1518a9"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1025,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1025,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.197212,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"96e451890c827eee11f079460a1518a9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931150,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1MH0._aRxNaDXLKayyHu4maUonsbWxEpSikrIZb8OPD-E4-E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"96e451890c827eee11f079460a1518a9","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b"},"level":"info","message":"Attempting to finish experiment","requestID":"96e451890c827eee11f079460a1518a9"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"fd29cf70-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1026,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1026,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.86328,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ee316901-b795-4812-9349-72f4346ebde6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fd29cf70-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/ee316901-b795-4812-9349-72f4346ebde6","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931150,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1MH0._aRxNaDXLKayyHu4maUonsbWxEpSikrIZb8OPD-E4-E"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fd29cf70-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:05:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/665b2c2e-f1ee-455a-9b0f-45bd254d240e?id=6406c857-14d9-4168-aaf7-3b260e02e2f6 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.157","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b6e955a563e1cb00f90b5474251595e3"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"6406c857-14d9-4168-aaf7-3b260e02e2f6\" in room \"http://localhost/rooms/665b2c2e-f1ee-455a-9b0f-45bd254d240e\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"6406c857-14d9-4168-aaf7-3b260e02e2f6\" from room \"http://localhost/rooms/665b2c2e-f1ee-455a-9b0f-45bd254d240e\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/ee316901-b795-4812-9349-72f4346ebde6","device":"57d9ba66-4928-4561-b339-69ac0b47011c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"21/Sep/2024:15:05:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/665b2c2e-f1ee-455a-9b0f-45bd254d240e?id=2ce737e5-e233-41a8-a2ce-eed733b44652 HTTP/1.1","status": "101","body_bytes_sent":"460","request_time":"0.155","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b1797f2a5e148b13186ed1f8125c9f83"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"2ce737e5-e233-41a8-a2ce-eed733b44652\" in room \"http://localhost/rooms/665b2c2e-f1ee-455a-9b0f-45bd254d240e\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"2ce737e5-e233-41a8-a2ce-eed733b44652\" from room \"http://localhost/rooms/665b2c2e-f1ee-455a-9b0f-45bd254d240e\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ee316901-b795-4812-9349-72f4346ebde6' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/ee316901-b795-4812-9349-72f4346ebde6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ee316901-b795-4812-9349-72f4346ebde6","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"703031e4a078d599284e7b3030618f31","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"703031e4a078d599284e7b3030618f31","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5239bce159ce71acac8a0005fd1133ab","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"5239bce159ce71acac8a0005fd1133ab","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/340429df-a5f5-43fe-9559-229612381299"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/ee316901-b795-4812-9349-72f4346ebde6"}}},"level":"info","message":"received a callback","requestID":"703031e4a078d599284e7b3030618f31"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f5609f0c-98c1-4956-a76a-c2189cda53a5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.3326142} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fee316901-b795-4812-9349-72f4346ebde6': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fee316901-b795-4812-9349-72f4346ebde6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"a5e28282-037f-4af1-88b0-068932701237","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.3330252} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/340429df-a5f5-43fe-9559-229612381299"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/ee316901-b795-4812-9349-72f4346ebde6"}}},"level":"info","message":"received a callback","requestID":"5239bce159ce71acac8a0005fd1133ab"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"fd29cf70-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"ee316901-b795-4812-9349-72f4346ebde6","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"fd29cf70-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/ee316901-b795-4812-9349-72f4346ebde6 204 41ms","method":"DELETE","requestID":"fd29cf70-782a-11ef-88d4-5fea3f61bb98","responseTime":41,"status":204,"url":"/peerconnections/ee316901-b795-4812-9349-72f4346ebde6"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b"},"level":"info","message":"Successfully finished experiment","requestID":"96e451890c827eee11f079460a1518a9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fd325af0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1027,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57d9ba66-4928-4561-b339-69ac0b47011c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5e88e9d9-1daa-4a15-a4af-9941b49736d2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.3750165} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1027,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.884577,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fd325af0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"fd325af0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fd325af0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/57d9ba66-4928-4561-b339-69ac0b47011c/signaling 200 14ms","method":"POST","requestID":"fd325af0-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/57d9ba66-4928-4561-b339-69ac0b47011c/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F983a3fc0-ad79-4c08-a138-655d7ee65b7b': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F983a3fc0-ad79-4c08-a138-655d7ee65b7b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"bd3c1b59-e59c-48ae-a96d-ca347723825d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.3831291} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c7603ea2-3efa-4cdb-9f36-ce07540009b3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.3834734} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fd34f300-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"96e451890c827eee11f079460a1518a9","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1028,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F340429df-a5f5-43fe-9559-229612381299","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8cd280d0-9968-4a8f-8fba-069acf58b1ed","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.3900235} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1028,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.254025,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/340429df-a5f5-43fe-9559-229612381299","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fd34f300-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/340429df-a5f5-43fe-9559-229612381299","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fd34f300-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fd34f300-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/340429df-a5f5-43fe-9559-229612381299/signaling 200 11ms","method":"POST","requestID":"fd34f300-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/340429df-a5f5-43fe-9559-229612381299/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b","requestID":"96e451890c827eee11f079460a1518a9"} gateway-1 | {"time_local":"21/Sep/2024:15:05:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.153","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"96e451890c827eee11f079460a1518a9"} experiment-1 | {"level":"info","message":"DELETE /experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b 204 150ms","method":"DELETE","requestID":"96e451890c827eee11f079460a1518a9","responseTime":150,"status":204,"url":"/experiments/983a3fc0-ad79-4c08-a138-655d7ee65b7b"} gateway-1 | {"time_local":"21/Sep/2024:15:05:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1783","request_time":"2.207","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"be3212a1eaeb14bc8adf569d6b39b4c6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"703031e4a078d599284e7b3030618f31","responseTime":121,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.123","http_referrer":"","http_user_agent":"node-fetch","requestID":"703031e4a078d599284e7b3030618f31"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 119ms","method":"POST","requestID":"5239bce159ce71acac8a0005fd1133ab","responseTime":119,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.124","http_referrer":"","http_user_agent":"node-fetch","requestID":"5239bce159ce71acac8a0005fd1133ab"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1MH0._aRxNaDXLKayyHu4maUonsbWxEpSikrIZb8OPD-E4-E","level":"info","message":"auth send jwt","requestID":"b42aa65acd740d6078327825597c2610"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b42aa65acd740d6078327825597c2610","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b42aa65acd740d6078327825597c2610"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1029,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1029,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.818942,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b42aa65acd740d6078327825597c2610","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931150,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1MH0._aRxNaDXLKayyHu4maUonsbWxEpSikrIZb8OPD-E4-E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b42aa65acd740d6078327825597c2610","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:05:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2106","request_time":"0.693","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"48dfca967113e61060dcad5c1cecf4f7"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/340429df-a5f5-43fe-9559-229612381299' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F06d9039c-0e81-488a-b821-8435adb7346c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"74c729a8-0d2a-40d9-991a-0dc1f5aaac02","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.4744155} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b42aa65acd740d6078327825597c2610","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/57d9ba66-4928-4561-b339-69ac0b47011c' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"900c0c44-dbdf-4742-907f-375b787ef841","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.47978} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"b42aa65acd740d6078327825597c2610","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F06d9039c-0e81-488a-b821-8435adb7346c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"ff2534ba-4c57-4f63-9707-b7ca37ed3038","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.496223} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"46778cda-ba59-4fbd-bfbc-3e2b1f0a39e2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.496488} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"b42aa65acd740d6078327825597c2610","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F06d9039c-0e81-488a-b821-8435adb7346c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F06d9039c-0e81-488a-b821-8435adb7346c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:50.496180551Z"}]},"request_id":"e7a23876-d2e1-451c-8eb0-3019754b7761","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.5007393} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b42aa65acd740d6078327825597c2610","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b42aa65acd740d6078327825597c2610"} gateway-1 | {"time_local":"21/Sep/2024:15:05:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b42aa65acd740d6078327825597c2610"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"b42aa65acd740d6078327825597c2610","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1MH0._aRxNaDXLKayyHu4maUonsbWxEpSikrIZb8OPD-E4-E","level":"info","message":"auth send jwt","requestID":"e6cb1fd978ea4670ff3c6999834d4251"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e6cb1fd978ea4670ff3c6999834d4251","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e6cb1fd978ea4670ff3c6999834d4251"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1030,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1030,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.790903,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e6cb1fd978ea4670ff3c6999834d4251","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931150,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1MH0._aRxNaDXLKayyHu4maUonsbWxEpSikrIZb8OPD-E4-E"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e6cb1fd978ea4670ff3c6999834d4251","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f94df11-e50a-412b-85de-92bf9192b8f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"36671582-143f-403c-b932-87d22fdccdec","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.5248816} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e6cb1fd978ea4670ff3c6999834d4251","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c59ae90e-a032-40d1-903d-74eff4f6baec","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.5297215} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e6cb1fd978ea4670ff3c6999834d4251","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f94df11-e50a-412b-85de-92bf9192b8f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"0eeda292-42ef-4d44-b592-f5f9856b8b21","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.5398145} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8d1dcfaa-24ee-4265-ad68-8a4a41e3d273","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.5400524} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"e6cb1fd978ea4670ff3c6999834d4251","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f94df11-e50a-412b-85de-92bf9192b8f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f94df11-e50a-412b-85de-92bf9192b8f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:50.539785328Z"}]},"request_id":"1798ef6a-88a3-4101-bb9e-cc2f2a9d5580","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931150.5440652} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e6cb1fd978ea4670ff3c6999834d4251","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e6cb1fd978ea4670ff3c6999834d4251"} gateway-1 | {"time_local":"21/Sep/2024:15:05:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.042","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e6cb1fd978ea4670ff3c6999834d4251"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"e6cb1fd978ea4670ff3c6999834d4251","responseTime":38,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1MX0.ueHW47gQTFD2KFvfMp1XeDbZdmmInndy7RzJrOY_9YA","level":"info","message":"auth send jwt","requestID":"f550c9192a1eb66d01e5e3dc27eed9d0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f550c9192a1eb66d01e5e3dc27eed9d0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f550c9192a1eb66d01e5e3dc27eed9d0"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1031,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:51Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1031,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.668593,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:51Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f550c9192a1eb66d01e5e3dc27eed9d0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931151,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1MX0.ueHW47gQTFD2KFvfMp1XeDbZdmmInndy7RzJrOY_9YA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f550c9192a1eb66d01e5e3dc27eed9d0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F06d9039c-0e81-488a-b821-8435adb7346c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F06d9039c-0e81-488a-b821-8435adb7346c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:50.496180551Z"}]},"request_id":"2e0ded64-6c8c-48bd-a425-3c2577827dcb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931151.0362697} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f550c9192a1eb66d01e5e3dc27eed9d0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3b7eb44c-6901-4302-82e4-955c2629e31d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931151.0434563} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"f550c9192a1eb66d01e5e3dc27eed9d0","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F06d9039c-0e81-488a-b821-8435adb7346c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F06d9039c-0e81-488a-b821-8435adb7346c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:50.496180551Z"}]},"request_id":"4ca9ae2e-23fe-4cf3-83d8-d7a6d2bf1e37","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931151.056424} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f550c9192a1eb66d01e5e3dc27eed9d0","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f550c9192a1eb66d01e5e3dc27eed9d0"} gateway-1 | {"time_local":"21/Sep/2024:15:05:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/06d9039c-0e81-488a-b821-8435adb7346c HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.044","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f550c9192a1eb66d01e5e3dc27eed9d0"} device-1 | {"level":"info","message":"PATCH /devices/06d9039c-0e81-488a-b821-8435adb7346c 200 39ms","method":"PATCH","requestID":"f550c9192a1eb66d01e5e3dc27eed9d0","responseTime":39,"status":200,"url":"/devices/06d9039c-0e81-488a-b821-8435adb7346c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1MX0.ueHW47gQTFD2KFvfMp1XeDbZdmmInndy7RzJrOY_9YA","level":"info","message":"auth send jwt","requestID":"cd47bc7618ce002dfdf29eaa6d82dbac"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cd47bc7618ce002dfdf29eaa6d82dbac","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"cd47bc7618ce002dfdf29eaa6d82dbac"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1032,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:51Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1032,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.708684,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:51Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cd47bc7618ce002dfdf29eaa6d82dbac","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931151,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1MX0.ueHW47gQTFD2KFvfMp1XeDbZdmmInndy7RzJrOY_9YA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cd47bc7618ce002dfdf29eaa6d82dbac","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"cd47bc7618ce002dfdf29eaa6d82dbac"} gateway-1 | {"time_local":"21/Sep/2024:15:05:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/06d9039c-0e81-488a-b821-8435adb7346c/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"cd47bc7618ce002dfdf29eaa6d82dbac"} device-1 | {"level":"info","message":"POST /devices/06d9039c-0e81-488a-b821-8435adb7346c/websocket 200 19ms","method":"POST","requestID":"cd47bc7618ce002dfdf29eaa6d82dbac","responseTime":19,"status":200,"url":"/devices/06d9039c-0e81-488a-b821-8435adb7346c/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"19427119287d5d2a925fe091a204f24d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"19427119287d5d2a925fe091a204f24d","responseTime":3,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9f94df11-e50a-412b-85de-92bf9192b8f5/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.005","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"19427119287d5d2a925fe091a204f24d"} device-1 | {"level":"info","message":"OPTIONS /devices/9f94df11-e50a-412b-85de-92bf9192b8f5/websocket 200 1ms","method":"OPTIONS","requestID":"19427119287d5d2a925fe091a204f24d","responseTime":1,"status":200,"url":"/devices/9f94df11-e50a-412b-85de-92bf9192b8f5/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1Mn0.N8FzAveka3ZS7eGiR-OWx4XRMgTMN2FrelDgvqOVrwU","level":"info","message":"auth send jwt","requestID":"82c2196e1990e961d94346a6b46e8d04"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"82c2196e1990e961d94346a6b46e8d04","responseTime":8,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"82c2196e1990e961d94346a6b46e8d04"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1033,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1033,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.828578,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"82c2196e1990e961d94346a6b46e8d04","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931152,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1Mn0.N8FzAveka3ZS7eGiR-OWx4XRMgTMN2FrelDgvqOVrwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"82c2196e1990e961d94346a6b46e8d04","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"82c2196e1990e961d94346a6b46e8d04"} device-1 | {"level":"info","message":"POST /devices/9f94df11-e50a-412b-85de-92bf9192b8f5/websocket 200 26ms","method":"POST","requestID":"82c2196e1990e961d94346a6b46e8d04","responseTime":26,"status":200,"url":"/devices/9f94df11-e50a-412b-85de-92bf9192b8f5/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:05:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9f94df11-e50a-412b-85de-92bf9192b8f5/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.036","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"82c2196e1990e961d94346a6b46e8d04"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e81814f8548f9fe2116f29b86c260153","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e81814f8548f9fe2116f29b86c260153","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9f94df11-e50a-412b-85de-92bf9192b8f5? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e81814f8548f9fe2116f29b86c260153"} device-1 | {"level":"info","message":"OPTIONS /devices/9f94df11-e50a-412b-85de-92bf9192b8f5? 200 1ms","method":"OPTIONS","requestID":"e81814f8548f9fe2116f29b86c260153","responseTime":1,"status":200,"url":"/devices/9f94df11-e50a-412b-85de-92bf9192b8f5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1Mn0.N8FzAveka3ZS7eGiR-OWx4XRMgTMN2FrelDgvqOVrwU","level":"info","message":"auth send jwt","requestID":"af8f4fb70d6dda143240637ea199a1de"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"af8f4fb70d6dda143240637ea199a1de","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"af8f4fb70d6dda143240637ea199a1de"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1034,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1034,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.094367,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"af8f4fb70d6dda143240637ea199a1de","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931152,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1Mn0.N8FzAveka3ZS7eGiR-OWx4XRMgTMN2FrelDgvqOVrwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"af8f4fb70d6dda143240637ea199a1de","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f94df11-e50a-412b-85de-92bf9192b8f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f94df11-e50a-412b-85de-92bf9192b8f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:50.539785328Z"}]},"request_id":"17b63a00-6f41-42aa-8f3b-dee230e08d5d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931152.6940546} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"af8f4fb70d6dda143240637ea199a1de","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8b3ecb28-d4fe-49f9-a185-c26253aac8d6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931152.7004583} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"af8f4fb70d6dda143240637ea199a1de","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f94df11-e50a-412b-85de-92bf9192b8f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f94df11-e50a-412b-85de-92bf9192b8f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:50.539785328Z"}]},"request_id":"e4687292-0f5f-4eb3-b684-b55b7f4b7012","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931152.7110927} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"af8f4fb70d6dda143240637ea199a1de","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"af8f4fb70d6dda143240637ea199a1de"} gateway-1 | {"time_local":"21/Sep/2024:15:05:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9f94df11-e50a-412b-85de-92bf9192b8f5? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.038","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"af8f4fb70d6dda143240637ea199a1de"} device-1 | {"level":"info","message":"PATCH /devices/9f94df11-e50a-412b-85de-92bf9192b8f5? 200 32ms","method":"PATCH","requestID":"af8f4fb70d6dda143240637ea199a1de","responseTime":32,"status":200,"url":"/devices/9f94df11-e50a-412b-85de-92bf9192b8f5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1Mn0.N8FzAveka3ZS7eGiR-OWx4XRMgTMN2FrelDgvqOVrwU","level":"info","message":"auth send jwt","requestID":"fb1f17a4cb8395c66aaa207575f8c799"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fb1f17a4cb8395c66aaa207575f8c799","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fb1f17a4cb8395c66aaa207575f8c799"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1035,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1035,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.165736,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fb1f17a4cb8395c66aaa207575f8c799","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931152,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1Mn0.N8FzAveka3ZS7eGiR-OWx4XRMgTMN2FrelDgvqOVrwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fb1f17a4cb8395c66aaa207575f8c799","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F06d9039c-0e81-488a-b821-8435adb7346c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F06d9039c-0e81-488a-b821-8435adb7346c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:50.496180551Z"}]},"request_id":"96daa5e6-143b-4010-b5cb-6bf300ab8c06","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931152.7379947} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fb1f17a4cb8395c66aaa207575f8c799","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fb1f17a4cb8395c66aaa207575f8c799"} gateway-1 | {"time_local":"21/Sep/2024:15:05:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/06d9039c-0e81-488a-b821-8435adb7346c? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fb1f17a4cb8395c66aaa207575f8c799"} device-1 | {"level":"info","message":"GET /devices/06d9039c-0e81-488a-b821-8435adb7346c? 200 18ms","method":"GET","requestID":"fb1f17a4cb8395c66aaa207575f8c799","responseTime":18,"status":200,"url":"/devices/06d9039c-0e81-488a-b821-8435adb7346c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1Mn0.N8FzAveka3ZS7eGiR-OWx4XRMgTMN2FrelDgvqOVrwU","level":"info","message":"auth send jwt","requestID":"870010f649f089611d893e677e339112"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"870010f649f089611d893e677e339112","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"870010f649f089611d893e677e339112"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1036,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1036,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.235631,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"870010f649f089611d893e677e339112","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931152,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1Mn0.N8FzAveka3ZS7eGiR-OWx4XRMgTMN2FrelDgvqOVrwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"870010f649f089611d893e677e339112","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f94df11-e50a-412b-85de-92bf9192b8f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f94df11-e50a-412b-85de-92bf9192b8f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:50.539785328Z"}]},"request_id":"44a0a12f-2ee5-418b-b4f5-560e5f6181cc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931152.7608798} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"870010f649f089611d893e677e339112","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"870010f649f089611d893e677e339112"} gateway-1 | {"time_local":"21/Sep/2024:15:05:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9f94df11-e50a-412b-85de-92bf9192b8f5? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"870010f649f089611d893e677e339112"} device-1 | {"level":"info","message":"GET /devices/9f94df11-e50a-412b-85de-92bf9192b8f5? 200 15ms","method":"GET","requestID":"870010f649f089611d893e677e339112","responseTime":15,"status":200,"url":"/devices/9f94df11-e50a-412b-85de-92bf9192b8f5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1Mn0.N8FzAveka3ZS7eGiR-OWx4XRMgTMN2FrelDgvqOVrwU","level":"info","message":"auth send jwt","requestID":"d54ac506dc9793bb988512cd095b051e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d54ac506dc9793bb988512cd095b051e","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"d54ac506dc9793bb988512cd095b051e"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1037,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1037,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.402057,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d54ac506dc9793bb988512cd095b051e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931152,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1Mn0.N8FzAveka3ZS7eGiR-OWx4XRMgTMN2FrelDgvqOVrwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d54ac506dc9793bb988512cd095b051e","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/04525a08-5609-496c-bd50-b6d8f0341658"},"level":"info","message":"Attempting to run experiment","requestID":"d54ac506dc9793bb988512cd095b051e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/04525a08-5609-496c-bd50-b6d8f0341658"},"level":"info","message":"Attempting to book experiment","requestID":"d54ac506dc9793bb988512cd095b051e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/04525a08-5609-496c-bd50-b6d8f0341658"},"level":"info","message":"Successfully booked experiment","requestID":"d54ac506dc9793bb988512cd095b051e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fea7e3f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fea83210-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1038,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1038,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.805891,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1039,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fea7e3f0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931152,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1Mn0.N8FzAveka3ZS7eGiR-OWx4XRMgTMN2FrelDgvqOVrwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fea7e3f0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1039,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.138332,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fea83210-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931152,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1Mn0.N8FzAveka3ZS7eGiR-OWx4XRMgTMN2FrelDgvqOVrwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fea83210-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F06d9039c-0e81-488a-b821-8435adb7346c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F06d9039c-0e81-488a-b821-8435adb7346c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:50.496180551Z"}]},"request_id":"e76d49d7-f332-4d72-9e52-9d01550730f1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931152.8290777} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"fea7e3f0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f94df11-e50a-412b-85de-92bf9192b8f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f94df11-e50a-412b-85de-92bf9192b8f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:50.539785328Z"}]},"request_id":"a14df213-b35c-42cc-beeb-a09f090ccd23","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931152.831129} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"fea83210-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fea83210-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/9f94df11-e50a-412b-85de-92bf9192b8f5? 200 24ms","method":"GET","requestID":"fea83210-782a-11ef-88d4-5fea3f61bb98","responseTime":24,"status":200,"url":"/devices/9f94df11-e50a-412b-85de-92bf9192b8f5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fea7e3f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/06d9039c-0e81-488a-b821-8435adb7346c? 200 27ms","method":"GET","requestID":"fea7e3f0-782a-11ef-88d4-5fea3f61bb98","responseTime":27,"status":200,"url":"/devices/06d9039c-0e81-488a-b821-8435adb7346c?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/04525a08-5609-496c-bd50-b6d8f0341658"},"level":"info","message":"Setting up experiment","requestID":"d54ac506dc9793bb988512cd095b051e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/04525a08-5609-496c-bd50-b6d8f0341658"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"d54ac506dc9793bb988512cd095b051e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/04525a08-5609-496c-bd50-b6d8f0341658"},"level":"info","message":"Successfully locked booking for experiment","requestID":"d54ac506dc9793bb988512cd095b051e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/04525a08-5609-496c-bd50-b6d8f0341658"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"d54ac506dc9793bb988512cd095b051e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/04525a08-5609-496c-bd50-b6d8f0341658"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"d54ac506dc9793bb988512cd095b051e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/04525a08-5609-496c-bd50-b6d8f0341658"},"level":"info","message":"Attempting to update booking for experiment","requestID":"d54ac506dc9793bb988512cd095b051e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/04525a08-5609-496c-bd50-b6d8f0341658"},"level":"info","message":"Successfully updated booking for experiment","requestID":"d54ac506dc9793bb988512cd095b051e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/04525a08-5609-496c-bd50-b6d8f0341658"},"level":"info","message":"Successfully set up experiment","requestID":"d54ac506dc9793bb988512cd095b051e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"feb30780-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"feb355a0-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/04525a08-5609-496c-bd50-b6d8f0341658"},"level":"info","message":"Successfully running experiment","requestID":"d54ac506dc9793bb988512cd095b051e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"feb3cad0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1040,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1040,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.35567,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1041,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"feb30780-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931152,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1Mn0.N8FzAveka3ZS7eGiR-OWx4XRMgTMN2FrelDgvqOVrwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"feb30780-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1041,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.927754,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"client_addr":"127.0.0.1:59846","level":"info","msg":"Received request.","req_id":1042,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"feb355a0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931152,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1Mn0.N8FzAveka3ZS7eGiR-OWx4XRMgTMN2FrelDgvqOVrwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"feb355a0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59846","level":"info","msg":"Sent response.","req_id":1042,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.147813,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F06d9039c-0e81-488a-b821-8435adb7346c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ef9f0b71-7d5e-4563-a876-8cbeeb3d2f69","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931152.9037309} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F06d9039c-0e81-488a-b821-8435adb7346c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F06d9039c-0e81-488a-b821-8435adb7346c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:50.496180551Z"}]},"request_id":"e7aad82a-ec12-4bec-a375-dab44b2c9015","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931152.9056249} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"feb3cad0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"feb3cad0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"feb30780-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"feb3cad0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f94df11-e50a-412b-85de-92bf9192b8f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f94df11-e50a-412b-85de-92bf9192b8f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:50.539785328Z"}]},"request_id":"79dd2aac-26b4-466d-acb6-b17c89079c78","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931152.909416} device-1 | {"level":"info","message":"POST /devices/06d9039c-0e81-488a-b821-8435adb7346c/signaling 200 16ms","method":"POST","requestID":"feb3cad0-782a-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/06d9039c-0e81-488a-b821-8435adb7346c/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"feb355a0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"feb6d810-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"feb30780-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/06d9039c-0e81-488a-b821-8435adb7346c? 200 28ms","method":"GET","requestID":"feb30780-782a-11ef-88d4-5fea3f61bb98","responseTime":28,"status":200,"url":"/devices/06d9039c-0e81-488a-b821-8435adb7346c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"feb355a0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/9f94df11-e50a-412b-85de-92bf9192b8f5? 200 27ms","method":"GET","requestID":"feb355a0-782a-11ef-88d4-5fea3f61bb98","responseTime":27,"status":200,"url":"/devices/9f94df11-e50a-412b-85de-92bf9192b8f5?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1043,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f94df11-e50a-412b-85de-92bf9192b8f5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cc2604ee-a511-49cd-9ba3-4b87e5cdd020","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931152.9181395} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F04525a08-5609-496c-bd50-b6d8f0341658#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F04525a08-5609-496c-bd50-b6d8f0341658","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"59198724-ec37-4ae0-a260-29de98b553a5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931152.9181933} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3ea57734-e902-490d-899f-5955e24451fb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931152.9185662} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1043,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.699254,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:52Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"feb7c270-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"feb6d810-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"feb6d810-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"d54ac506dc9793bb988512cd095b051e","responseTime":25,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"feb6d810-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1044,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:52Z"} device-1 | {"level":"info","message":"POST /devices/9f94df11-e50a-412b-85de-92bf9192b8f5/signaling 200 10ms","method":"POST","requestID":"feb6d810-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/9f94df11-e50a-412b-85de-92bf9192b8f5/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F06d9039c-0e81-488a-b821-8435adb7346c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fc38e438-31f9-4144-9502-7b266222187c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931152.9246356} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1044,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.761555,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"feb7c270-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"feb7c270-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/04525a08-5609-496c-bd50-b6d8f0341658","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"d54ac506dc9793bb988512cd095b051e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"feb7c270-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/06d9039c-0e81-488a-b821-8435adb7346c/signaling 200 10ms","method":"POST","requestID":"feb7c270-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/06d9039c-0e81-488a-b821-8435adb7346c/signaling"} gateway-1 | {"time_local":"21/Sep/2024:15:05:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.163","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d54ac506dc9793bb988512cd095b051e"} experiment-1 | {"level":"info","message":"POST /experiments? 201 157ms","method":"POST","requestID":"d54ac506dc9793bb988512cd095b051e","responseTime":157,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"feb99730-782a-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1Mn0.N8FzAveka3ZS7eGiR-OWx4XRMgTMN2FrelDgvqOVrwU","level":"info","message":"auth send jwt","requestID":"4cc70abff39f7986528f17e79d68c270"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4cc70abff39f7986528f17e79d68c270","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4cc70abff39f7986528f17e79d68c270"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1045,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f94df11-e50a-412b-85de-92bf9192b8f5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8692feb8-1480-4a51-92dc-d6e14e67f4fc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931152.9355934} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1046,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1045,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.664889,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"feb99730-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"feb99730-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1046,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.616763,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"4cc70abff39f7986528f17e79d68c270","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931152,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1Mn0.N8FzAveka3ZS7eGiR-OWx4XRMgTMN2FrelDgvqOVrwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4cc70abff39f7986528f17e79d68c270","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"feb99730-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/9f94df11-e50a-412b-85de-92bf9192b8f5/signaling 200 10ms","method":"POST","requestID":"feb99730-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/9f94df11-e50a-412b-85de-92bf9192b8f5/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F06d9039c-0e81-488a-b821-8435adb7346c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F06d9039c-0e81-488a-b821-8435adb7346c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:50.496180551Z"}]},"request_id":"9df9b30e-86ee-4303-aea3-654ef67a7475","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931152.941754} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/04525a08-5609-496c-bd50-b6d8f0341658"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"d54ac506dc9793bb988512cd095b051e"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4cc70abff39f7986528f17e79d68c270","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"febb9300-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"febbba10-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4cc70abff39f7986528f17e79d68c270"} gateway-1 | {"time_local":"21/Sep/2024:15:05:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/06d9039c-0e81-488a-b821-8435adb7346c? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4cc70abff39f7986528f17e79d68c270"} device-1 | {"level":"info","message":"GET /devices/06d9039c-0e81-488a-b821-8435adb7346c? 200 16ms","method":"GET","requestID":"4cc70abff39f7986528f17e79d68c270","responseTime":16,"status":200,"url":"/devices/06d9039c-0e81-488a-b821-8435adb7346c?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1047,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1048,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1047,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.869907,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1048,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.905218,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"febb9300-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931152,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1Mn0.N8FzAveka3ZS7eGiR-OWx4XRMgTMN2FrelDgvqOVrwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"febb9300-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1Mn0.N8FzAveka3ZS7eGiR-OWx4XRMgTMN2FrelDgvqOVrwU","level":"info","message":"auth send jwt","requestID":"ffa882f5da143709a4d9e5f750ddaa2b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ffa882f5da143709a4d9e5f750ddaa2b","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"febbba10-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931152,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1Mn0.N8FzAveka3ZS7eGiR-OWx4XRMgTMN2FrelDgvqOVrwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"febbba10-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ffa882f5da143709a4d9e5f750ddaa2b"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F06d9039c-0e81-488a-b821-8435adb7346c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F06d9039c-0e81-488a-b821-8435adb7346c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:50.496180551Z"}]},"request_id":"1bf75bd4-e274-459d-868e-bd13827a19bf","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931152.9560018} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"febb9300-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f94df11-e50a-412b-85de-92bf9192b8f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f94df11-e50a-412b-85de-92bf9192b8f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:50.539785328Z"}]},"request_id":"ae59cb2a-f820-4c4d-95f8-53875e7bde62","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931152.956867} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"febbba10-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"febb9300-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1049,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1049,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.730249,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:52Z"} device-1 | {"level":"info","message":"GET /devices/06d9039c-0e81-488a-b821-8435adb7346c? 200 15ms","method":"GET","requestID":"febb9300-782a-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/06d9039c-0e81-488a-b821-8435adb7346c?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ffa882f5da143709a4d9e5f750ddaa2b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931152,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1Mn0.N8FzAveka3ZS7eGiR-OWx4XRMgTMN2FrelDgvqOVrwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ffa882f5da143709a4d9e5f750ddaa2b","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"febbba10-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/9f94df11-e50a-412b-85de-92bf9192b8f5? 200 18ms","method":"GET","requestID":"febbba10-782a-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/9f94df11-e50a-412b-85de-92bf9192b8f5?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f94df11-e50a-412b-85de-92bf9192b8f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f94df11-e50a-412b-85de-92bf9192b8f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:50.539785328Z"}]},"request_id":"e0ed78e0-6a44-4a3f-b970-bc486032d947","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931152.9637747} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/04525a08-5609-496c-bd50-b6d8f0341658"},"level":"info","message":"Building connection plan","requestID":"d54ac506dc9793bb988512cd095b051e"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"1881a9ad-0ab0-4ae2-bb77-2f44c9ce6f99"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"a4187780-b749-40c0-8a1b-696e02db20bd"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"2b459385-5857-4596-9f32-e20fa4eda23b"}]},"level":"info","message":"Built pairwise service configurations","requestID":"d54ac506dc9793bb988512cd095b051e"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ffa882f5da143709a4d9e5f750ddaa2b","responseTime":2,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"febec750-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"febec750-782a-11ef-938d-0b888d58857d"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ffa882f5da143709a4d9e5f750ddaa2b"} forwarding-1 | {"level":"info","message":"POST /rooms 201 2ms","method":"POST","requestID":"febec750-782a-11ef-938d-0b888d58857d","responseTime":2,"status":201,"url":"/rooms"} gateway-1 | {"time_local":"21/Sep/2024:15:05:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9f94df11-e50a-412b-85de-92bf9192b8f5? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ffa882f5da143709a4d9e5f750ddaa2b"} device-1 | {"level":"info","message":"GET /devices/9f94df11-e50a-412b-85de-92bf9192b8f5? 200 12ms","method":"GET","requestID":"ffa882f5da143709a4d9e5f750ddaa2b","responseTime":12,"status":200,"url":"/devices/9f94df11-e50a-412b-85de-92bf9192b8f5?"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/1cc180a6-0b19-4323-b8a2-140ade62366f?id=19909bf7-9a3c-4d01-b372-036eff8c82ff","ws://localhost/rooms/1cc180a6-0b19-4323-b8a2-140ade62366f?id=cc34ff82-534e-4a48-a3d4-a23a1254ba01"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"d54ac506dc9793bb988512cd095b051e"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"febf6390-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1050,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1050,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.089098,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"febf6390-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931152,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1Mn0.N8FzAveka3ZS7eGiR-OWx4XRMgTMN2FrelDgvqOVrwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"febf6390-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"233075a3-e2ea-4ace-96e8-02bece29be69","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931152.9819834} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"08348475-b856-46ed-927e-04598c1636b1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931152.9822369} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"febf6390-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"febf6390-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"febf6390-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/ba819002-3dcd-4937-aa60-766aaf42e640'","requestID":"febf6390-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/ba819002-3dcd-4937-aa60-766aaf42e640'","requestID":"febf6390-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"febf6390-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 26ms","method":"POST","requestID":"febf6390-782a-11ef-88d4-5fea3f61bb98","responseTime":26,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"febf6390-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ba819002-3dcd-4937-aa60-766aaf42e640' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ba819002-3dcd-4937-aa60-766aaf42e640","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"fec4e1d0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"cc34ff82-534e-4a48-a3d4-a23a1254ba01\" in room \"http://localhost/rooms/1cc180a6-0b19-4323-b8a2-140ade62366f\"","requestID":"fec4e1d0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"fec4e1d0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"fec508e0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"19909bf7-9a3c-4d01-b372-036eff8c82ff\" in room \"http://localhost/rooms/1cc180a6-0b19-4323-b8a2-140ade62366f\"","requestID":"fec508e0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"fec508e0-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"19909bf7-9a3c-4d01-b372-036eff8c82ff\" in room \"http://localhost/rooms/1cc180a6-0b19-4323-b8a2-140ade62366f\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"19909bf7-9a3c-4d01-b372-036eff8c82ff\" in room \"http://localhost/rooms/1cc180a6-0b19-4323-b8a2-140ade62366f\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1be5bd9cc2d469074f86e40d4566f28b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1be5bd9cc2d469074f86e40d4566f28b","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"19909bf7-9a3c-4d01-b372-036eff8c82ff\" in room \"http://localhost/rooms/1cc180a6-0b19-4323-b8a2-140ade62366f\""} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/ba819002-3dcd-4937-aa60-766aaf42e640"}}},"level":"info","message":"received a callback","requestID":"1be5bd9cc2d469074f86e40d4566f28b"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"19909bf7-9a3c-4d01-b372-036eff8c82ff\" in room \"http://localhost/rooms/1cc180a6-0b19-4323-b8a2-140ade62366f\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"19909bf7-9a3c-4d01-b372-036eff8c82ff\" in room \"http://localhost/rooms/1cc180a6-0b19-4323-b8a2-140ade62366f\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"19909bf7-9a3c-4d01-b372-036eff8c82ff\" in room \"http://localhost/rooms/1cc180a6-0b19-4323-b8a2-140ade62366f\""} device-1 | {"data":{"peerconnection":"ba819002-3dcd-4937-aa60-766aaf42e640","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"1be5bd9cc2d469074f86e40d4566f28b","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"1be5bd9cc2d469074f86e40d4566f28b"} device-1 | {"data":{"peerconnection":"ba819002-3dcd-4937-aa60-766aaf42e640","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/04525a08-5609-496c-bd50-b6d8f0341658"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"d54ac506dc9793bb988512cd095b051e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fec94ea0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1051,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F06d9039c-0e81-488a-b821-8435adb7346c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"589a5777-b40c-4af6-a2a7-d0b471a8eb72","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.0383978} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1051,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.375685,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fec94ea0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fec94ea0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ba819002-3dcd-4937-aa60-766aaf42e640' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ba819002-3dcd-4937-aa60-766aaf42e640","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"51276ef27595f08c31a3af739bb1c76a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fec94ea0-782a-11ef-88d4-5fea3f61bb98"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"51276ef27595f08c31a3af739bb1c76a","responseTime":0,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/06d9039c-0e81-488a-b821-8435adb7346c/signaling 200 10ms","method":"POST","requestID":"fec94ea0-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/06d9039c-0e81-488a-b821-8435adb7346c/signaling"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/ba819002-3dcd-4937-aa60-766aaf42e640"}}},"level":"info","message":"received a callback","requestID":"51276ef27595f08c31a3af739bb1c76a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fecb2360-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1052,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f94df11-e50a-412b-85de-92bf9192b8f5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5dd23210-10d8-4ad1-9fe3-3cd7d49a1f12","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.050404} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"fecbbfa0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1052,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.331887,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fecb2360-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fecb2360-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1053,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:53Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fecb2360-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/9f94df11-e50a-412b-85de-92bf9192b8f5/signaling 200 8ms","method":"POST","requestID":"fecb2360-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/9f94df11-e50a-412b-85de-92bf9192b8f5/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fba819002-3dcd-4937-aa60-766aaf42e640","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6fc4de5b-144e-403d-be22-8d411198d77e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.055157} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1053,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.587624,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ba819002-3dcd-4937-aa60-766aaf42e640","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fecbbfa0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/ba819002-3dcd-4937-aa60-766aaf42e640","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fecbbfa0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"fecbbfa0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/ba819002-3dcd-4937-aa60-766aaf42e640 200 9ms","method":"GET","requestID":"fecbbfa0-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/peerconnections/ba819002-3dcd-4937-aa60-766aaf42e640"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 27ms","method":"POST","requestID":"51276ef27595f08c31a3af739bb1c76a","responseTime":27,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"51276ef27595f08c31a3af739bb1c76a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fecf6920-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1054,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f94df11-e50a-412b-85de-92bf9192b8f5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"87099475-16d3-4dbf-90d2-3e5f2d5b56ec","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.0790653} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1054,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.199476,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fecf6920-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fecf6920-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fecf6920-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/9f94df11-e50a-412b-85de-92bf9192b8f5/signaling 200 9ms","method":"POST","requestID":"fecf6920-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/9f94df11-e50a-412b-85de-92bf9192b8f5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fed116d0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1055,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F06d9039c-0e81-488a-b821-8435adb7346c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d35ba11d-c072-4301-845b-d89a77814006","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.089614} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1055,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.100749,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fed116d0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fed116d0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fed116d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/06d9039c-0e81-488a-b821-8435adb7346c/signaling 200 8ms","method":"POST","requestID":"fed116d0-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/06d9039c-0e81-488a-b821-8435adb7346c/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo","level":"info","message":"auth send jwt","requestID":"ea53e25a08e17c2e2d8b9e782983aedb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ea53e25a08e17c2e2d8b9e782983aedb","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/04525a08-5609-496c-bd50-b6d8f0341658","requestID":"ea53e25a08e17c2e2d8b9e782983aedb"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1056,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1056,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.725235,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/04525a08-5609-496c-bd50-b6d8f0341658","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ea53e25a08e17c2e2d8b9e782983aedb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/04525a08-5609-496c-bd50-b6d8f0341658","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931153,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ea53e25a08e17c2e2d8b9e782983aedb","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/04525a08-5609-496c-bd50-b6d8f0341658","requestID":"ea53e25a08e17c2e2d8b9e782983aedb"} experiment-1 | {"level":"info","message":"GET /experiments/04525a08-5609-496c-bd50-b6d8f0341658 200 9ms","method":"GET","requestID":"ea53e25a08e17c2e2d8b9e782983aedb","responseTime":9,"status":200,"url":"/experiments/04525a08-5609-496c-bd50-b6d8f0341658"} gateway-1 | {"time_local":"21/Sep/2024:15:05:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/04525a08-5609-496c-bd50-b6d8f0341658 HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ea53e25a08e17c2e2d8b9e782983aedb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo","level":"info","message":"auth send jwt","requestID":"08adb059a0f31834d90cd90f0691cf54"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"08adb059a0f31834d90cd90f0691cf54","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/04525a08-5609-496c-bd50-b6d8f0341658","requestID":"08adb059a0f31834d90cd90f0691cf54"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1057,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1057,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.362862,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/04525a08-5609-496c-bd50-b6d8f0341658","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"08adb059a0f31834d90cd90f0691cf54","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/04525a08-5609-496c-bd50-b6d8f0341658","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931153,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"08adb059a0f31834d90cd90f0691cf54","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/04525a08-5609-496c-bd50-b6d8f0341658"},"level":"info","message":"Attempting to finish experiment","requestID":"08adb059a0f31834d90cd90f0691cf54"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"fed97b40-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1058,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1058,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.714833,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ba819002-3dcd-4937-aa60-766aaf42e640","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fed97b40-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/ba819002-3dcd-4937-aa60-766aaf42e640","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931153,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fed97b40-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:05:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/1cc180a6-0b19-4323-b8a2-140ade62366f?id=cc34ff82-534e-4a48-a3d4-a23a1254ba01 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.152","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"950f9249f83b8c7558012e42a9d2117a"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"cc34ff82-534e-4a48-a3d4-a23a1254ba01\" in room \"http://localhost/rooms/1cc180a6-0b19-4323-b8a2-140ade62366f\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"cc34ff82-534e-4a48-a3d4-a23a1254ba01\" from room \"http://localhost/rooms/1cc180a6-0b19-4323-b8a2-140ade62366f\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/ba819002-3dcd-4937-aa60-766aaf42e640","device":"9f94df11-e50a-412b-85de-92bf9192b8f5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"21/Sep/2024:15:05:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/1cc180a6-0b19-4323-b8a2-140ade62366f?id=19909bf7-9a3c-4d01-b372-036eff8c82ff HTTP/1.1","status": "101","body_bytes_sent":"918","request_time":"0.152","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"877603969b05edf9701fbedaa236f34b"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ba819002-3dcd-4937-aa60-766aaf42e640' to 'http://localhost/callbacks/experiment'"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"19909bf7-9a3c-4d01-b372-036eff8c82ff\" in room \"http://localhost/rooms/1cc180a6-0b19-4323-b8a2-140ade62366f\""} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/ba819002-3dcd-4937-aa60-766aaf42e640' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ba819002-3dcd-4937-aa60-766aaf42e640","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"19909bf7-9a3c-4d01-b372-036eff8c82ff\" from room \"http://localhost/rooms/1cc180a6-0b19-4323-b8a2-140ade62366f\""} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fba819002-3dcd-4937-aa60-766aaf42e640': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fba819002-3dcd-4937-aa60-766aaf42e640","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"1691aabe-a871-40de-84f0-6268e4138ba3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.1604562} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"91283845eed12cc04886174a8d4cec96","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"121fb558-8665-4dd5-8361-b7d610d6bdd8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.1606803} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"91283845eed12cc04886174a8d4cec96","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"531b3e4a56f73f49d0d0bcdfc4f68492","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"fed97b40-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"531b3e4a56f73f49d0d0bcdfc4f68492","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/ba819002-3dcd-4937-aa60-766aaf42e640"}}},"level":"info","message":"received a callback","requestID":"91283845eed12cc04886174a8d4cec96"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/ba819002-3dcd-4937-aa60-766aaf42e640"}}},"level":"info","message":"received a callback","requestID":"531b3e4a56f73f49d0d0bcdfc4f68492"} device-1 | {"data":{"peerconnection":"ba819002-3dcd-4937-aa60-766aaf42e640","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"fed97b40-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/ba819002-3dcd-4937-aa60-766aaf42e640 204 42ms","method":"DELETE","requestID":"fed97b40-782a-11ef-88d4-5fea3f61bb98","responseTime":42,"status":204,"url":"/peerconnections/ba819002-3dcd-4937-aa60-766aaf42e640"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/04525a08-5609-496c-bd50-b6d8f0341658"},"level":"info","message":"Successfully finished experiment","requestID":"08adb059a0f31834d90cd90f0691cf54"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fee2a300-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1059,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f94df11-e50a-412b-85de-92bf9192b8f5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4229301b-0513-4d38-b0ed-d28c79667ec0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.2064438} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1059,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.777785,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fee2a300-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fee2a300-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fee2a300-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/9f94df11-e50a-412b-85de-92bf9192b8f5/signaling 200 11ms","method":"POST","requestID":"fee2a300-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/9f94df11-e50a-412b-85de-92bf9192b8f5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fee4c5e0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F04525a08-5609-496c-bd50-b6d8f0341658': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F04525a08-5609-496c-bd50-b6d8f0341658","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"dbd178ce-985d-423d-8ce8-09a242daf76f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.2149467} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"84f1cdf9-0ec8-433e-8cf2-e61b2fb524d9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.2154226} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"08adb059a0f31834d90cd90f0691cf54","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1060,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F06d9039c-0e81-488a-b821-8435adb7346c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4c84360d-6e04-4323-b004-e39c8bc17412","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.2206795} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1060,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.325655,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fee4c5e0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fee4c5e0-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fee4c5e0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/06d9039c-0e81-488a-b821-8435adb7346c/signaling 200 12ms","method":"POST","requestID":"fee4c5e0-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/06d9039c-0e81-488a-b821-8435adb7346c/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/04525a08-5609-496c-bd50-b6d8f0341658","requestID":"08adb059a0f31834d90cd90f0691cf54"} gateway-1 | {"time_local":"21/Sep/2024:15:05:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/04525a08-5609-496c-bd50-b6d8f0341658 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.157","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"08adb059a0f31834d90cd90f0691cf54"} experiment-1 | {"level":"info","message":"DELETE /experiments/04525a08-5609-496c-bd50-b6d8f0341658 204 154ms","method":"DELETE","requestID":"08adb059a0f31834d90cd90f0691cf54","responseTime":154,"status":204,"url":"/experiments/04525a08-5609-496c-bd50-b6d8f0341658"} gateway-1 | {"time_local":"21/Sep/2024:15:05:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1783","request_time":"2.195","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"731430b0fc7cc2d8581a67394873d361"} gateway-1 | {"time_local":"21/Sep/2024:15:05:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.127","http_referrer":"","http_user_agent":"node-fetch","requestID":"91283845eed12cc04886174a8d4cec96"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 124ms","method":"POST","requestID":"91283845eed12cc04886174a8d4cec96","responseTime":124,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 124ms","method":"POST","requestID":"531b3e4a56f73f49d0d0bcdfc4f68492","responseTime":124,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.128","http_referrer":"","http_user_agent":"node-fetch","requestID":"531b3e4a56f73f49d0d0bcdfc4f68492"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo","level":"info","message":"auth send jwt","requestID":"01707f3b70857365bef684ef86c40e39"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"01707f3b70857365bef684ef86c40e39","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"01707f3b70857365bef684ef86c40e39"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1061,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1061,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.972139,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"01707f3b70857365bef684ef86c40e39","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931153,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"01707f3b70857365bef684ef86c40e39","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/06d9039c-0e81-488a-b821-8435adb7346c' closed"} gateway-1 | {"time_local":"21/Sep/2024:15:05:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2106","request_time":"0.660","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"db5f47697d96571df0cc40c0b3a8ac2c"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a3e1b710-c720-4444-91b5-bea3ffc8b23d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.3111088} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"01707f3b70857365bef684ef86c40e39","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/9f94df11-e50a-412b-85de-92bf9192b8f5' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8bbdb7c9-5e8c-4b38-a6de-b0781d4eaa86","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.3178701} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"01707f3b70857365bef684ef86c40e39","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"5bc7192d-8797-4d95-9f94-e2643780bdbf","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.3360667} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9493cf0a-d22e-4136-b36e-2047f27182e1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.3362553} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"01707f3b70857365bef684ef86c40e39","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:53.336039334Z"}]},"request_id":"7cd14186-3d5b-4e03-afd7-e110accde968","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.3413365} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"01707f3b70857365bef684ef86c40e39","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"01707f3b70857365bef684ef86c40e39"} device-1 | {"level":"info","message":"POST /devices? 201 53ms","method":"POST","requestID":"01707f3b70857365bef684ef86c40e39","responseTime":53,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"01707f3b70857365bef684ef86c40e39"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo","level":"info","message":"auth send jwt","requestID":"3e74a2338cf132aa4443eddc6ec49e20"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3e74a2338cf132aa4443eddc6ec49e20","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3e74a2338cf132aa4443eddc6ec49e20"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1062,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1062,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.747183,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"3e74a2338cf132aa4443eddc6ec49e20","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931153,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3e74a2338cf132aa4443eddc6ec49e20","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bc9f35-baaf-4230-b829-4d08efdfd62a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b356ee9e-d925-4685-b832-510d7a096e08","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.364884} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3e74a2338cf132aa4443eddc6ec49e20","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c66e47ba-a4f3-4d7e-a731-5568d0de53fc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.3696556} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"3e74a2338cf132aa4443eddc6ec49e20","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bc9f35-baaf-4230-b829-4d08efdfd62a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"7d55c2aa-3edf-40e0-a077-9ec6a1bedc3e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.3796132} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5fe78506-61b3-454c-9977-aeffb73443e5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.3797092} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"3e74a2338cf132aa4443eddc6ec49e20","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bc9f35-baaf-4230-b829-4d08efdfd62a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bc9f35-baaf-4230-b829-4d08efdfd62a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:53.379572229Z"}]},"request_id":"c470f7c5-970b-460a-962c-b331d1e07f8a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.3843193} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3e74a2338cf132aa4443eddc6ec49e20","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3e74a2338cf132aa4443eddc6ec49e20"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"3e74a2338cf132aa4443eddc6ec49e20","responseTime":38,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.042","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3e74a2338cf132aa4443eddc6ec49e20"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo","level":"info","message":"auth send jwt","requestID":"549d4addd0440cfcfc746e7350bf7cf1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"549d4addd0440cfcfc746e7350bf7cf1","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo","level":"info","message":"auth send jwt","requestID":"f355ff8509b025c1d4d9a0b92152d762"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f355ff8509b025c1d4d9a0b92152d762","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"549d4addd0440cfcfc746e7350bf7cf1"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f355ff8509b025c1d4d9a0b92152d762"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1063,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1063,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.644788,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"549d4addd0440cfcfc746e7350bf7cf1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931153,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"549d4addd0440cfcfc746e7350bf7cf1","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1064,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1064,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.66274,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f355ff8509b025c1d4d9a0b92152d762","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931153,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f355ff8509b025c1d4d9a0b92152d762","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bc9f35-baaf-4230-b829-4d08efdfd62a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bc9f35-baaf-4230-b829-4d08efdfd62a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:53.379572229Z"}]},"request_id":"2f07aee2-ed66-4715-808b-3dc90f2403c7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.8604436} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"549d4addd0440cfcfc746e7350bf7cf1","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:53.336039334Z"}]},"request_id":"061d068c-e151-48bd-897b-898eda11ba49","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.8612213} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f355ff8509b025c1d4d9a0b92152d762","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"49f0c622-2caa-40d2-bd86-5d425e509869","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.8652093} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"549d4addd0440cfcfc746e7350bf7cf1","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7840f753-8b15-43fc-bd8f-e366ce7aa635","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.8667831} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"f355ff8509b025c1d4d9a0b92152d762","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:53.336039334Z"}]},"request_id":"5d13780e-c1d2-4422-b9aa-765637568aa0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.8693419} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f355ff8509b025c1d4d9a0b92152d762","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f355ff8509b025c1d4d9a0b92152d762"} gateway-1 | {"time_local":"21/Sep/2024:15:05:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f355ff8509b025c1d4d9a0b92152d762"} device-1 | {"level":"info","message":"PATCH /devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb 200 20ms","method":"PATCH","requestID":"f355ff8509b025c1d4d9a0b92152d762","responseTime":20,"status":200,"url":"/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo","level":"info","message":"auth send jwt","requestID":"bfed30871d307682b161f19b068f676a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bfed30871d307682b161f19b068f676a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"bfed30871d307682b161f19b068f676a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1065,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1065,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.784685,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bfed30871d307682b161f19b068f676a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931153,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bfed30871d307682b161f19b068f676a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bc9f35-baaf-4230-b829-4d08efdfd62a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bc9f35-baaf-4230-b829-4d08efdfd62a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:53.379572229Z"}]},"request_id":"79968251-5a46-47a9-a015-ea9f52dbe381","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.879598} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"549d4addd0440cfcfc746e7350bf7cf1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"549d4addd0440cfcfc746e7350bf7cf1"} gateway-1 | {"time_local":"21/Sep/2024:15:05:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/97bc9f35-baaf-4230-b829-4d08efdfd62a HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.038","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"549d4addd0440cfcfc746e7350bf7cf1"} device-1 | {"level":"info","message":"PATCH /devices/97bc9f35-baaf-4230-b829-4d08efdfd62a 200 32ms","method":"PATCH","requestID":"549d4addd0440cfcfc746e7350bf7cf1","responseTime":32,"status":200,"url":"/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo","level":"info","message":"auth send jwt","requestID":"c237da864a5ce7867250a78f7a8adc25"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c237da864a5ce7867250a78f7a8adc25","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c237da864a5ce7867250a78f7a8adc25"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"bfed30871d307682b161f19b068f676a"} gateway-1 | {"time_local":"21/Sep/2024:15:05:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.018","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"bfed30871d307682b161f19b068f676a"} device-1 | {"level":"info","message":"POST /devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb/websocket 200 15ms","method":"POST","requestID":"bfed30871d307682b161f19b068f676a","responseTime":15,"status":200,"url":"/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb/websocket"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1066,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1066,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.724528,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c237da864a5ce7867250a78f7a8adc25","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931153,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c237da864a5ce7867250a78f7a8adc25","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c237da864a5ce7867250a78f7a8adc25"} device-1 | {"level":"info","message":"POST /devices/97bc9f35-baaf-4230-b829-4d08efdfd62a/websocket 200 17ms","method":"POST","requestID":"c237da864a5ce7867250a78f7a8adc25","responseTime":17,"status":200,"url":"/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:05:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/97bc9f35-baaf-4230-b829-4d08efdfd62a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c237da864a5ce7867250a78f7a8adc25"} device-1 | {"level":"info","message":"device 'http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo","level":"info","message":"auth send jwt","requestID":"a1d91747929edce009396844be3b8bd3"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a1d91747929edce009396844be3b8bd3","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a1d91747929edce009396844be3b8bd3"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1067,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1067,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.81834,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a1d91747929edce009396844be3b8bd3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931153,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a1d91747929edce009396844be3b8bd3","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:53.336039334Z"}]},"request_id":"1e386332-3336-437e-a09c-06144d9a6f15","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.9274652} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a1d91747929edce009396844be3b8bd3","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a1d91747929edce009396844be3b8bd3"} gateway-1 | {"time_local":"21/Sep/2024:15:05:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a1d91747929edce009396844be3b8bd3"} device-1 | {"level":"info","message":"GET /devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb? 200 10ms","method":"GET","requestID":"a1d91747929edce009396844be3b8bd3","responseTime":10,"status":200,"url":"/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo","level":"info","message":"auth send jwt","requestID":"f95b256a268f320291b88488a9ba8d6b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f95b256a268f320291b88488a9ba8d6b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f95b256a268f320291b88488a9ba8d6b"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1068,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1068,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.638124,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f95b256a268f320291b88488a9ba8d6b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931153,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f95b256a268f320291b88488a9ba8d6b","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bc9f35-baaf-4230-b829-4d08efdfd62a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bc9f35-baaf-4230-b829-4d08efdfd62a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:53.379572229Z"}]},"request_id":"e802ffc4-b8b5-4044-a661-d0d86cb5e6b9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931153.9419162} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f95b256a268f320291b88488a9ba8d6b","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f95b256a268f320291b88488a9ba8d6b"} gateway-1 | {"time_local":"21/Sep/2024:15:05:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/97bc9f35-baaf-4230-b829-4d08efdfd62a? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f95b256a268f320291b88488a9ba8d6b"} device-1 | {"level":"info","message":"GET /devices/97bc9f35-baaf-4230-b829-4d08efdfd62a? 200 10ms","method":"GET","requestID":"f95b256a268f320291b88488a9ba8d6b","responseTime":10,"status":200,"url":"/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo","level":"info","message":"auth send jwt","requestID":"1a67c9ef4bb2052583b07ddd863c5c8c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1a67c9ef4bb2052583b07ddd863c5c8c","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"1a67c9ef4bb2052583b07ddd863c5c8c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1069,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1069,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.073903,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1a67c9ef4bb2052583b07ddd863c5c8c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931153,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1a67c9ef4bb2052583b07ddd863c5c8c","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8"},"level":"info","message":"Attempting to run experiment","requestID":"1a67c9ef4bb2052583b07ddd863c5c8c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8"},"level":"info","message":"Attempting to book experiment","requestID":"1a67c9ef4bb2052583b07ddd863c5c8c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8"},"level":"info","message":"Successfully booked experiment","requestID":"1a67c9ef4bb2052583b07ddd863c5c8c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ff5b5570-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ff5b7c80-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1070,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1071,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1070,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.653693,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ff5b5570-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931153,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ff5b5570-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1071,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.100133,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ff5b7c80-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931153,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ff5b7c80-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:53.336039334Z"}]},"request_id":"26037bad-b8aa-4491-8fc1-943f53d92ccb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.0004117} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ff5b5570-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bc9f35-baaf-4230-b829-4d08efdfd62a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bc9f35-baaf-4230-b829-4d08efdfd62a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:53.379572229Z"}]},"request_id":"7c345eb5-0699-405d-b504-d830157558ac","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.0016036} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ff5b7c80-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ff5b5570-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb? 200 17ms","method":"GET","requestID":"ff5b5570-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ff5b7c80-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/97bc9f35-baaf-4230-b829-4d08efdfd62a? 200 18ms","method":"GET","requestID":"ff5b7c80-782a-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8"},"level":"info","message":"Setting up experiment","requestID":"1a67c9ef4bb2052583b07ddd863c5c8c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"1a67c9ef4bb2052583b07ddd863c5c8c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8"},"level":"info","message":"Successfully locked booking for experiment","requestID":"1a67c9ef4bb2052583b07ddd863c5c8c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"1a67c9ef4bb2052583b07ddd863c5c8c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"1a67c9ef4bb2052583b07ddd863c5c8c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8"},"level":"info","message":"Attempting to update booking for experiment","requestID":"1a67c9ef4bb2052583b07ddd863c5c8c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8"},"level":"info","message":"Successfully updated booking for experiment","requestID":"1a67c9ef4bb2052583b07ddd863c5c8c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8"},"level":"info","message":"Successfully set up experiment","requestID":"1a67c9ef4bb2052583b07ddd863c5c8c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ff66c720-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ff671540-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ff676360-782a-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8"},"level":"info","message":"Successfully running experiment","requestID":"1a67c9ef4bb2052583b07ddd863c5c8c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1072,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1072,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.531258,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1073,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ff66c720-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931153,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"ff66c720-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1073,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.089506,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"client_addr":"127.0.0.1:59846","level":"info","msg":"Received request.","req_id":1074,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ff671540-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931153,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"ff671540-782a-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59846","level":"info","msg":"Sent response.","req_id":1074,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.396374,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1ee17b76-af8f-4adf-a69a-e1706f733120","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.0780804} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ff676360-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"ff676360-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:53.336039334Z"}]},"request_id":"f0003c87-4df1-4df9-953f-be878e659732","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.0838225} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"ff66c720-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ff676360-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bc9f35-baaf-4230-b829-4d08efdfd62a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bc9f35-baaf-4230-b829-4d08efdfd62a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:53.379572229Z"}]},"request_id":"096db102-7b21-4384-8d16-fb862dd9f722","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.0879152} device-1 | {"level":"info","message":"POST /devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb/signaling 200 19ms","method":"POST","requestID":"ff676360-782a-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ff671540-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ff6ae5d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ff66c720-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb? 200 32ms","method":"GET","requestID":"ff66c720-782a-11ef-88d4-5fea3f61bb98","responseTime":32,"status":200,"url":"/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ff671540-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/97bc9f35-baaf-4230-b829-4d08efdfd62a? 200 31ms","method":"GET","requestID":"ff671540-782a-11ef-88d4-5fea3f61bb98","responseTime":31,"status":200,"url":"/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1075,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bc9f35-baaf-4230-b829-4d08efdfd62a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"473140b7-6a05-4b83-b559-81f774d5f05e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.0995781} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F32f99670-ac33-4ad2-a25a-70fc50fb84d8#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F32f99670-ac33-4ad2-a25a-70fc50fb84d8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"1342db1a-4bda-4607-8211-628397a1b3da","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.0998437} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"da92ac97-0984-4092-bb7d-7de700dc324e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.1003182} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1075,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.178828,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:54Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ff6c1e50-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ff6ae5d0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ff6ae5d0-782a-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"1a67c9ef4bb2052583b07ddd863c5c8c","responseTime":26,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ff6ae5d0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/97bc9f35-baaf-4230-b829-4d08efdfd62a/signaling 200 12ms","method":"POST","requestID":"ff6ae5d0-782a-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1076,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7cbfb578-b8a2-4f4f-b4fa-b8a5750e56c9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.1076026} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1076,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.868292,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ff6c1e50-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ff6c1e50-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"1a67c9ef4bb2052583b07ddd863c5c8c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ff6c1e50-782a-11ef-88d4-5fea3f61bb98"} gateway-1 | {"time_local":"21/Sep/2024:15:05:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1296","request_time":"0.165","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1a67c9ef4bb2052583b07ddd863c5c8c"} experiment-1 | {"level":"info","message":"POST /experiments? 201 161ms","method":"POST","requestID":"1a67c9ef4bb2052583b07ddd863c5c8c","responseTime":161,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"POST /devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb/signaling 200 11ms","method":"POST","requestID":"ff6c1e50-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ff6df310-782a-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NH0.RY8_0FqQ00k6_-3C7mE5PHcLQGWptzWQAidzq7gsUAA","level":"info","message":"auth send jwt","requestID":"fc9433440760323df6ebd4077d9b09a5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"fc9433440760323df6ebd4077d9b09a5","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1077,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:54Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fc9433440760323df6ebd4077d9b09a5"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bc9f35-baaf-4230-b829-4d08efdfd62a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3d40f6b5-5b67-45ce-b50c-8da74820d242","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.118024} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1077,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.269123,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1078,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ff6df310-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ff6df310-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1078,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.81936,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fc9433440760323df6ebd4077d9b09a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931154,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NH0.RY8_0FqQ00k6_-3C7mE5PHcLQGWptzWQAidzq7gsUAA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fc9433440760323df6ebd4077d9b09a5","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ff6df310-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/97bc9f35-baaf-4230-b829-4d08efdfd62a/signaling 200 11ms","method":"POST","requestID":"ff6df310-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:53.336039334Z"}]},"request_id":"b478402d-1633-47c6-ae9d-b236800528db","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.1247592} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"1a67c9ef4bb2052583b07ddd863c5c8c"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fc9433440760323df6ebd4077d9b09a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ff6feee0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ff7015f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fc9433440760323df6ebd4077d9b09a5"} gateway-1 | {"time_local":"21/Sep/2024:15:05:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fc9433440760323df6ebd4077d9b09a5"} device-1 | {"level":"info","message":"GET /devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb? 200 14ms","method":"GET","requestID":"fc9433440760323df6ebd4077d9b09a5","responseTime":14,"status":200,"url":"/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1079,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1079,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.703047,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1080,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ff6feee0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931153,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ff6feee0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1080,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.688022,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ff7015f0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931153,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ff7015f0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NH0.RY8_0FqQ00k6_-3C7mE5PHcLQGWptzWQAidzq7gsUAA","level":"info","message":"auth send jwt","requestID":"d802a1735c807190a823260c2eed3718"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d802a1735c807190a823260c2eed3718","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d802a1735c807190a823260c2eed3718"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:53.336039334Z"}]},"request_id":"6f1b2d8c-aa08-4826-8336-a6fafab53603","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.135668} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ff6feee0-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bc9f35-baaf-4230-b829-4d08efdfd62a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bc9f35-baaf-4230-b829-4d08efdfd62a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:53.379572229Z"}]},"request_id":"ccee13b4-356e-4d5d-8fa5-407df9bdbf70","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.1368568} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ff6feee0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ff7015f0-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1081,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:54Z"} device-1 | {"level":"info","message":"GET /devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb? 200 14ms","method":"GET","requestID":"ff6feee0-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1081,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.271798,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d802a1735c807190a823260c2eed3718","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931154,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NH0.RY8_0FqQ00k6_-3C7mE5PHcLQGWptzWQAidzq7gsUAA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d802a1735c807190a823260c2eed3718","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ff7015f0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/97bc9f35-baaf-4230-b829-4d08efdfd62a? 200 17ms","method":"GET","requestID":"ff7015f0-782a-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bc9f35-baaf-4230-b829-4d08efdfd62a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bc9f35-baaf-4230-b829-4d08efdfd62a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:53.379572229Z"}]},"request_id":"ff6259fd-5fd0-4ae8-81d0-a9244a9b17d9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.1450806} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8"},"level":"info","message":"Building connection plan","requestID":"1a67c9ef4bb2052583b07ddd863c5c8c"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"a860b3be-f8a8-4ba9-a3c7-976ee46c9424"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"a04f83ec-f050-4f3c-a384-3502eb861cbf"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"619aec08-9fc1-4ed4-b394-1ab951d8a8d3"}]},"level":"info","message":"Built pairwise service configurations","requestID":"1a67c9ef4bb2052583b07ddd863c5c8c"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d802a1735c807190a823260c2eed3718","responseTime":3,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"ff732330-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"ff732330-782a-11ef-938d-0b888d58857d"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d802a1735c807190a823260c2eed3718"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"ff732330-782a-11ef-938d-0b888d58857d","responseTime":1,"status":201,"url":"/rooms"} gateway-1 | {"time_local":"21/Sep/2024:15:05:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/97bc9f35-baaf-4230-b829-4d08efdfd62a? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d802a1735c807190a823260c2eed3718"} device-1 | {"level":"info","message":"GET /devices/97bc9f35-baaf-4230-b829-4d08efdfd62a? 200 13ms","method":"GET","requestID":"d802a1735c807190a823260c2eed3718","responseTime":13,"status":200,"url":"/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a?"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/fe522e4f-9383-4014-9144-adf088dc200a?id=5a23aad3-c99b-42d9-9e14-53fafdf82a17","ws://localhost/rooms/fe522e4f-9383-4014-9144-adf088dc200a?id=4f9d3eaf-a9e0-4cd7-8409-2aab31783dcd"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"1a67c9ef4bb2052583b07ddd863c5c8c"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"ff739860-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1082,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1082,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.745561,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ff739860-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931153,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1M30.1VdaI0mk6ss30Utt7Edbx4IQwD9InIPsSUMPl3UjFjo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ff739860-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"44b29f27-3425-4d72-87f5-7900948579a7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.1614747} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"522f7d80-9699-4b3b-9ff2-8b9cc8d141a3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.1616788} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"ff739860-782a-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"ff739860-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"ff739860-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/07650d0a-221f-4389-9778-a2ee38f36e52'","requestID":"ff739860-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/07650d0a-221f-4389-9778-a2ee38f36e52'","requestID":"ff739860-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"ff739860-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 24ms","method":"POST","requestID":"ff739860-782a-11ef-88d4-5fea3f61bb98","responseTime":24,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"ff739860-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/07650d0a-221f-4389-9778-a2ee38f36e52' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"07650d0a-221f-4389-9778-a2ee38f36e52","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"ff78a170-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"4f9d3eaf-a9e0-4cd7-8409-2aab31783dcd\" in room \"http://localhost/rooms/fe522e4f-9383-4014-9144-adf088dc200a\"","requestID":"ff78a170-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"ff78a170-782a-11ef-938d-0b888d58857d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ef73953379427a2b3fc9387e53cd05fd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ef73953379427a2b3fc9387e53cd05fd","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"ff78c880-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5a23aad3-c99b-42d9-9e14-53fafdf82a17\" in room \"http://localhost/rooms/fe522e4f-9383-4014-9144-adf088dc200a\"","requestID":"ff78c880-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"ff78c880-782a-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"4f9d3eaf-a9e0-4cd7-8409-2aab31783dcd\" in room \"http://localhost/rooms/fe522e4f-9383-4014-9144-adf088dc200a\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"4f9d3eaf-a9e0-4cd7-8409-2aab31783dcd\" in room \"http://localhost/rooms/fe522e4f-9383-4014-9144-adf088dc200a\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"4f9d3eaf-a9e0-4cd7-8409-2aab31783dcd\" in room \"http://localhost/rooms/fe522e4f-9383-4014-9144-adf088dc200a\""} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/07650d0a-221f-4389-9778-a2ee38f36e52"}}},"level":"info","message":"received a callback","requestID":"ef73953379427a2b3fc9387e53cd05fd"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"4f9d3eaf-a9e0-4cd7-8409-2aab31783dcd\" in room \"http://localhost/rooms/fe522e4f-9383-4014-9144-adf088dc200a\""} device-1 | {"data":{"peerconnection":"07650d0a-221f-4389-9778-a2ee38f36e52","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"ef73953379427a2b3fc9387e53cd05fd","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"ef73953379427a2b3fc9387e53cd05fd"} device-1 | {"data":{"peerconnection":"07650d0a-221f-4389-9778-a2ee38f36e52","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"1a67c9ef4bb2052583b07ddd863c5c8c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ff7ce730-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1083,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0d857d49-3aaa-4794-9c72-996491a9f637","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.216256} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1083,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.922079,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ff7ce730-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/07650d0a-221f-4389-9778-a2ee38f36e52' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"07650d0a-221f-4389-9778-a2ee38f36e52","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ff7ce730-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0044912849822fd160b4dac33325aa54","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0044912849822fd160b4dac33325aa54","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/07650d0a-221f-4389-9778-a2ee38f36e52"}}},"level":"info","message":"received a callback","requestID":"0044912849822fd160b4dac33325aa54"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ff7ce730-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb/signaling 200 11ms","method":"POST","requestID":"ff7ce730-782a-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ff7ee300-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"ff7f3120-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1084,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bc9f35-baaf-4230-b829-4d08efdfd62a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6b5a6c1b-d76a-44cb-89a9-522ef0fd2cb8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.2287567} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1085,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1084,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.147887,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ff7ee300-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ff7ee300-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F07650d0a-221f-4389-9778-a2ee38f36e52","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e97538c5-0bdc-4ac1-ace9-bf2136328a6a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.2311273} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1085,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.559267,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/07650d0a-221f-4389-9778-a2ee38f36e52","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ff7f3120-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/07650d0a-221f-4389-9778-a2ee38f36e52","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ff7f3120-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ff7ee300-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/97bc9f35-baaf-4230-b829-4d08efdfd62a/signaling 200 9ms","method":"POST","requestID":"ff7ee300-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a/signaling"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"ff7f3120-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/07650d0a-221f-4389-9778-a2ee38f36e52 200 8ms","method":"GET","requestID":"ff7f3120-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/peerconnections/07650d0a-221f-4389-9778-a2ee38f36e52"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 26ms","method":"POST","requestID":"0044912849822fd160b4dac33325aa54","responseTime":26,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.029","http_referrer":"","http_user_agent":"node-fetch","requestID":"0044912849822fd160b4dac33325aa54"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ff828c80-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1086,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4dcd1a20-2019-4459-b161-bf13fe46f35e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.2528327} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1086,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.188165,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ff828c80-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ff828c80-782a-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ff828c80-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb/signaling 200 9ms","method":"POST","requestID":"ff828c80-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ff843a30-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1087,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bc9f35-baaf-4230-b829-4d08efdfd62a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3bc0410b-9630-486c-88cb-4b1c3bb51752","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.2633374} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1087,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.526107,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ff843a30-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ff843a30-782a-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ff843a30-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/97bc9f35-baaf-4230-b829-4d08efdfd62a/signaling 200 8ms","method":"POST","requestID":"ff843a30-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NH0.RY8_0FqQ00k6_-3C7mE5PHcLQGWptzWQAidzq7gsUAA","level":"info","message":"auth send jwt","requestID":"dcb750b7a8733a597e9134dc7ee6cfef"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"dcb750b7a8733a597e9134dc7ee6cfef","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8","requestID":"dcb750b7a8733a597e9134dc7ee6cfef"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1088,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1088,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.667573,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dcb750b7a8733a597e9134dc7ee6cfef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931154,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NH0.RY8_0FqQ00k6_-3C7mE5PHcLQGWptzWQAidzq7gsUAA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"dcb750b7a8733a597e9134dc7ee6cfef","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8","requestID":"dcb750b7a8733a597e9134dc7ee6cfef"} gateway-1 | {"time_local":"21/Sep/2024:15:05:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8 HTTP/1.1","status": "200","body_bytes_sent":"1369","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dcb750b7a8733a597e9134dc7ee6cfef"} experiment-1 | {"level":"info","message":"GET /experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8 200 9ms","method":"GET","requestID":"dcb750b7a8733a597e9134dc7ee6cfef","responseTime":9,"status":200,"url":"/experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NH0.RY8_0FqQ00k6_-3C7mE5PHcLQGWptzWQAidzq7gsUAA","level":"info","message":"auth send jwt","requestID":"1ca1eddd117dd01c1685a890e78ba165"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1ca1eddd117dd01c1685a890e78ba165","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8","requestID":"1ca1eddd117dd01c1685a890e78ba165"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1089,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1089,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.821512,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1ca1eddd117dd01c1685a890e78ba165","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931154,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NH0.RY8_0FqQ00k6_-3C7mE5PHcLQGWptzWQAidzq7gsUAA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1ca1eddd117dd01c1685a890e78ba165","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8"},"level":"info","message":"Attempting to finish experiment","requestID":"1ca1eddd117dd01c1685a890e78ba165"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"ff8d3ae0-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1090,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1090,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.494598,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/07650d0a-221f-4389-9778-a2ee38f36e52","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ff8d3ae0-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/07650d0a-221f-4389-9778-a2ee38f36e52","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931154,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NH0.RY8_0FqQ00k6_-3C7mE5PHcLQGWptzWQAidzq7gsUAA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ff8d3ae0-782a-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:05:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/fe522e4f-9383-4014-9144-adf088dc200a?id=5a23aad3-c99b-42d9-9e14-53fafdf82a17 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.150","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"2290b08160eb9835c3d2691e9c8c2755"} gateway-1 | {"time_local":"21/Sep/2024:15:05:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/fe522e4f-9383-4014-9144-adf088dc200a?id=4f9d3eaf-a9e0-4cd7-8409-2aab31783dcd HTTP/1.1","status": "101","body_bytes_sent":"458","request_time":"0.150","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"885b7e39ed4657790860948466a6d13e"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"5a23aad3-c99b-42d9-9e14-53fafdf82a17\" in room \"http://localhost/rooms/fe522e4f-9383-4014-9144-adf088dc200a\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"5a23aad3-c99b-42d9-9e14-53fafdf82a17\" from room \"http://localhost/rooms/fe522e4f-9383-4014-9144-adf088dc200a\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"4f9d3eaf-a9e0-4cd7-8409-2aab31783dcd\" in room \"http://localhost/rooms/fe522e4f-9383-4014-9144-adf088dc200a\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"4f9d3eaf-a9e0-4cd7-8409-2aab31783dcd\" from room \"http://localhost/rooms/fe522e4f-9383-4014-9144-adf088dc200a\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/07650d0a-221f-4389-9778-a2ee38f36e52' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/07650d0a-221f-4389-9778-a2ee38f36e52' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"07650d0a-221f-4389-9778-a2ee38f36e52","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2ecd936e3805d1b84f98665d5d7cda6c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2ecd936e3805d1b84f98665d5d7cda6c","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"70eb2e520245a07c25180e773db8a432","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/07650d0a-221f-4389-9778-a2ee38f36e52"}}},"level":"info","message":"received a callback","requestID":"2ecd936e3805d1b84f98665d5d7cda6c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"70eb2e520245a07c25180e773db8a432","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/07650d0a-221f-4389-9778-a2ee38f36e52"}}},"level":"info","message":"received a callback","requestID":"70eb2e520245a07c25180e773db8a432"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F07650d0a-221f-4389-9778-a2ee38f36e52': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F07650d0a-221f-4389-9778-a2ee38f36e52","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"e4599455-651d-4b9f-a596-f2b010cdb4e6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.3404431} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"750d6fd3-9b8e-41a6-b8f2-cf1510e0cc73","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.3412938} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"ff8d3ae0-782a-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"07650d0a-221f-4389-9778-a2ee38f36e52","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"ff8d3ae0-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/07650d0a-221f-4389-9778-a2ee38f36e52 204 50ms","method":"DELETE","requestID":"ff8d3ae0-782a-11ef-88d4-5fea3f61bb98","responseTime":50,"status":204,"url":"/peerconnections/07650d0a-221f-4389-9778-a2ee38f36e52"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8"},"level":"info","message":"Successfully finished experiment","requestID":"1ca1eddd117dd01c1685a890e78ba165"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ff985e70-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1091,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dad82db4-f055-4924-8582-7d0415df365f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.3979077} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1091,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.409227,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ff985e70-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"ff985e70-782a-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ff985e70-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb/signaling 200 14ms","method":"POST","requestID":"ff985e70-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F32f99670-ac33-4ad2-a25a-70fc50fb84d8': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F32f99670-ac33-4ad2-a25a-70fc50fb84d8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"5d9b8cb7-a6df-43c7-81e2-26bebb7d9c0b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.4049613} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"09cd857e-f52d-4215-be5b-fdf753592441","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.405623} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"1ca1eddd117dd01c1685a890e78ba165","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ff9af680-782a-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1092,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bc9f35-baaf-4230-b829-4d08efdfd62a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1aa7c326-e3d1-49c2-b062-b165390ac9d5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.4150069} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1092,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.85576,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ff9af680-782a-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"ff9af680-782a-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ff9af680-782a-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/97bc9f35-baaf-4230-b829-4d08efdfd62a/signaling 200 14ms","method":"POST","requestID":"ff9af680-782a-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8","requestID":"1ca1eddd117dd01c1685a890e78ba165"} gateway-1 | {"time_local":"21/Sep/2024:15:05:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.177","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1ca1eddd117dd01c1685a890e78ba165"} gateway-1 | {"time_local":"21/Sep/2024:15:05:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2108","request_time":"0.588","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"301f6e4fe1b086bcf44446c6d2129914"} gateway-1 | {"time_local":"21/Sep/2024:15:05:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2105","request_time":"0.574","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f26bddf6333e3f43fe53733e3e7c0baa"} experiment-1 | {"level":"info","message":"DELETE /experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8 204 173ms","method":"DELETE","requestID":"1ca1eddd117dd01c1685a890e78ba165","responseTime":173,"status":204,"url":"/experiments/32f99670-ac33-4ad2-a25a-70fc50fb84d8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 141ms","method":"POST","requestID":"2ecd936e3805d1b84f98665d5d7cda6c","responseTime":141,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.147","http_referrer":"","http_user_agent":"node-fetch","requestID":"2ecd936e3805d1b84f98665d5d7cda6c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 139ms","method":"POST","requestID":"70eb2e520245a07c25180e773db8a432","responseTime":139,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.147","http_referrer":"","http_user_agent":"node-fetch","requestID":"70eb2e520245a07c25180e773db8a432"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NH0.RY8_0FqQ00k6_-3C7mE5PHcLQGWptzWQAidzq7gsUAA","level":"info","message":"auth send jwt","requestID":"044c3702b1e9e6eb1d62e20a41cc4861"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"044c3702b1e9e6eb1d62e20a41cc4861","responseTime":6,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/97bc9f35-baaf-4230-b829-4d08efdfd62a' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"044c3702b1e9e6eb1d62e20a41cc4861"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1093,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1093,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.10141,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"044c3702b1e9e6eb1d62e20a41cc4861","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931154,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NH0.RY8_0FqQ00k6_-3C7mE5PHcLQGWptzWQAidzq7gsUAA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"044c3702b1e9e6eb1d62e20a41cc4861","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/177e2aec-44b1-4d5f-9a9c-8d839d3ddbeb' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"16c5c640-9f91-47be-9414-8f88630e1bb2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.5139284} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"044c3702b1e9e6eb1d62e20a41cc4861","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7be9edd2-8f5f-46b0-88d1-cb438cac0c44","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.5209825} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"044c3702b1e9e6eb1d62e20a41cc4861","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"fd16029d-304f-4644-a9f1-c5d2f7c485dd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.5316768} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e08941db-8d63-4647-a722-0a06e5a8a76d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.5318475} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"044c3702b1e9e6eb1d62e20a41cc4861","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:54.531627539Z"}]},"request_id":"cedfb0a9-719a-462f-b859-bdd98ccad080","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.5375767} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"044c3702b1e9e6eb1d62e20a41cc4861","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"044c3702b1e9e6eb1d62e20a41cc4861"} gateway-1 | {"time_local":"21/Sep/2024:15:05:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"044c3702b1e9e6eb1d62e20a41cc4861"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"044c3702b1e9e6eb1d62e20a41cc4861","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NH0.RY8_0FqQ00k6_-3C7mE5PHcLQGWptzWQAidzq7gsUAA","level":"info","message":"auth send jwt","requestID":"19e4dccfe71ba81bf20dad02c8a04b77"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"19e4dccfe71ba81bf20dad02c8a04b77","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"19e4dccfe71ba81bf20dad02c8a04b77"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1094,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1094,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.008812,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"19e4dccfe71ba81bf20dad02c8a04b77","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931154,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NH0.RY8_0FqQ00k6_-3C7mE5PHcLQGWptzWQAidzq7gsUAA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"19e4dccfe71ba81bf20dad02c8a04b77","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F762ee978-d5d5-43b1-b694-38ba240dd081","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"dd25b90b-6d4e-4c71-ace9-6fcfecb68b1d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.5694096} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"19e4dccfe71ba81bf20dad02c8a04b77","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a57e9c31-bceb-4c73-9b15-bba3dff7fbad","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.575213} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"19e4dccfe71ba81bf20dad02c8a04b77","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F762ee978-d5d5-43b1-b694-38ba240dd081","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"567f3a3a-c3b1-4942-88d4-dfc130331221","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.5869324} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"abfbc70a-56cd-4c47-b667-743fecfa526d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.5871806} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"19e4dccfe71ba81bf20dad02c8a04b77","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F762ee978-d5d5-43b1-b694-38ba240dd081","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F762ee978-d5d5-43b1-b694-38ba240dd081","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:54.586894934Z"}]},"request_id":"26b4c358-4b5c-439d-8478-aa3c3d2f0ad1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931154.5918975} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"19e4dccfe71ba81bf20dad02c8a04b77","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"19e4dccfe71ba81bf20dad02c8a04b77"} gateway-1 | {"time_local":"21/Sep/2024:15:05:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"19e4dccfe71ba81bf20dad02c8a04b77"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"19e4dccfe71ba81bf20dad02c8a04b77","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo","level":"info","message":"auth send jwt","requestID":"8224a27320a753c6b6a46e48995a8a14"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"8224a27320a753c6b6a46e48995a8a14","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo","level":"info","message":"auth send jwt","requestID":"d9c376d595cac74ef458c6906b5dd7e6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d9c376d595cac74ef458c6906b5dd7e6","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"8224a27320a753c6b6a46e48995a8a14"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d9c376d595cac74ef458c6906b5dd7e6"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1095,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1095,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.799665,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"8224a27320a753c6b6a46e48995a8a14","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931155,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8224a27320a753c6b6a46e48995a8a14","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1096,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1096,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.803416,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d9c376d595cac74ef458c6906b5dd7e6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931155,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d9c376d595cac74ef458c6906b5dd7e6","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F762ee978-d5d5-43b1-b694-38ba240dd081","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F762ee978-d5d5-43b1-b694-38ba240dd081","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:54.586894934Z"}]},"request_id":"5754488b-dab1-45ad-932f-692e53b33cea","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.0682333} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8224a27320a753c6b6a46e48995a8a14","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:54.531627539Z"}]},"request_id":"73e48f37-d6b5-437f-b8aa-f675757fba9f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.0691442} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d9c376d595cac74ef458c6906b5dd7e6","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f368c963-8086-40da-8181-cf91d5fb0a8f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.0737877} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"8224a27320a753c6b6a46e48995a8a14","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8698cb00-0af9-4760-ba47-0738cf905493","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.0753536} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"d9c376d595cac74ef458c6906b5dd7e6","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:54.531627539Z"}]},"request_id":"19e9c349-4e35-4c0d-b3c2-fe44d46fa84b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.0821936} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d9c376d595cac74ef458c6906b5dd7e6","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d9c376d595cac74ef458c6906b5dd7e6"} gateway-1 | {"time_local":"21/Sep/2024:15:05:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.036","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"d9c376d595cac74ef458c6906b5dd7e6"} device-1 | {"level":"info","message":"PATCH /devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085 200 27ms","method":"PATCH","requestID":"d9c376d595cac74ef458c6906b5dd7e6","responseTime":27,"status":200,"url":"/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo","level":"info","message":"auth send jwt","requestID":"d90b9d3a895744e78af1bcf2ca26e936"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d90b9d3a895744e78af1bcf2ca26e936","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d90b9d3a895744e78af1bcf2ca26e936"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F762ee978-d5d5-43b1-b694-38ba240dd081","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F762ee978-d5d5-43b1-b694-38ba240dd081","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:54.586894934Z"}]},"request_id":"c7f65113-da36-4c93-960e-3b5627b75625","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.0919998} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8224a27320a753c6b6a46e48995a8a14","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1097,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1097,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.662792,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"8224a27320a753c6b6a46e48995a8a14"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d90b9d3a895744e78af1bcf2ca26e936","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931155,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d90b9d3a895744e78af1bcf2ca26e936","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:05:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/762ee978-d5d5-43b1-b694-38ba240dd081 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.047","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"8224a27320a753c6b6a46e48995a8a14"} device-1 | {"level":"info","message":"PATCH /devices/762ee978-d5d5-43b1-b694-38ba240dd081 200 39ms","method":"PATCH","requestID":"8224a27320a753c6b6a46e48995a8a14","responseTime":39,"status":200,"url":"/devices/762ee978-d5d5-43b1-b694-38ba240dd081"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo","level":"info","message":"auth send jwt","requestID":"e8b2ca873beee8ff84e8f6c80824d760"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e8b2ca873beee8ff84e8f6c80824d760","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e8b2ca873beee8ff84e8f6c80824d760"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1098,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1098,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.646946,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e8b2ca873beee8ff84e8f6c80824d760","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931155,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e8b2ca873beee8ff84e8f6c80824d760","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d90b9d3a895744e78af1bcf2ca26e936"} gateway-1 | {"time_local":"21/Sep/2024:15:05:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"d90b9d3a895744e78af1bcf2ca26e936"} device-1 | {"level":"info","message":"POST /devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085/websocket 200 18ms","method":"POST","requestID":"d90b9d3a895744e78af1bcf2ca26e936","responseTime":18,"status":200,"url":"/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e8b2ca873beee8ff84e8f6c80824d760"} device-1 | {"level":"info","message":"POST /devices/762ee978-d5d5-43b1-b694-38ba240dd081/websocket 200 16ms","method":"POST","requestID":"e8b2ca873beee8ff84e8f6c80824d760","responseTime":16,"status":200,"url":"/devices/762ee978-d5d5-43b1-b694-38ba240dd081/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:05:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/762ee978-d5d5-43b1-b694-38ba240dd081/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e8b2ca873beee8ff84e8f6c80824d760"} device-1 | {"level":"info","message":"device 'http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo","level":"info","message":"auth send jwt","requestID":"18f5ccb4d3a69b057e359fbd0929c72f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"18f5ccb4d3a69b057e359fbd0929c72f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"18f5ccb4d3a69b057e359fbd0929c72f"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1099,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1099,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.833031,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"18f5ccb4d3a69b057e359fbd0929c72f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931155,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"18f5ccb4d3a69b057e359fbd0929c72f","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:54.531627539Z"}]},"request_id":"0bd4051e-eb9e-4a8b-95c1-198c0eeb93a4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.1522348} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"18f5ccb4d3a69b057e359fbd0929c72f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"18f5ccb4d3a69b057e359fbd0929c72f"} gateway-1 | {"time_local":"21/Sep/2024:15:05:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"18f5ccb4d3a69b057e359fbd0929c72f"} device-1 | {"level":"info","message":"GET /devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085? 200 12ms","method":"GET","requestID":"18f5ccb4d3a69b057e359fbd0929c72f","responseTime":12,"status":200,"url":"/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo","level":"info","message":"auth send jwt","requestID":"d3f5306966dc0396bf4548f8bc314be1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d3f5306966dc0396bf4548f8bc314be1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d3f5306966dc0396bf4548f8bc314be1"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1100,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1100,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.634863,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d3f5306966dc0396bf4548f8bc314be1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931155,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d3f5306966dc0396bf4548f8bc314be1","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F762ee978-d5d5-43b1-b694-38ba240dd081","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F762ee978-d5d5-43b1-b694-38ba240dd081","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:54.586894934Z"}]},"request_id":"9cbd6eea-f438-4f42-bf6b-6a8505215c28","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.1702428} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d3f5306966dc0396bf4548f8bc314be1","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d3f5306966dc0396bf4548f8bc314be1"} device-1 | {"level":"info","message":"GET /devices/762ee978-d5d5-43b1-b694-38ba240dd081? 200 13ms","method":"GET","requestID":"d3f5306966dc0396bf4548f8bc314be1","responseTime":13,"status":200,"url":"/devices/762ee978-d5d5-43b1-b694-38ba240dd081?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/762ee978-d5d5-43b1-b694-38ba240dd081? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d3f5306966dc0396bf4548f8bc314be1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo","level":"info","message":"auth send jwt","requestID":"d6a346bf337c2e6d82c64c9ed48fab19"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d6a346bf337c2e6d82c64c9ed48fab19","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"d6a346bf337c2e6d82c64c9ed48fab19"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1101,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1101,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.719712,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d6a346bf337c2e6d82c64c9ed48fab19","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931155,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d6a346bf337c2e6d82c64c9ed48fab19","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f915761-355e-437c-b6f8-e16aa3fec712"},"level":"info","message":"Attempting to run experiment","requestID":"d6a346bf337c2e6d82c64c9ed48fab19"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f915761-355e-437c-b6f8-e16aa3fec712"},"level":"info","message":"Attempting to book experiment","requestID":"d6a346bf337c2e6d82c64c9ed48fab19"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f915761-355e-437c-b6f8-e16aa3fec712"},"level":"info","message":"Successfully booked experiment","requestID":"d6a346bf337c2e6d82c64c9ed48fab19"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"00175270-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"00177980-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1102,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1102,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.282516,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"00175270-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931155,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"00175270-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1103,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1103,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.780926,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"00177980-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931155,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"00177980-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:54.531627539Z"}]},"request_id":"887ca143-8dec-4f76-8dd2-474079e66558","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.234583} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"00175270-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F762ee978-d5d5-43b1-b694-38ba240dd081","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F762ee978-d5d5-43b1-b694-38ba240dd081","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:54.586894934Z"}]},"request_id":"3ece2817-aa9d-43ad-99d0-e9e1ceda1552","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.2362247} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"00177980-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"00175270-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085? 200 18ms","method":"GET","requestID":"00175270-782b-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"00177980-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/762ee978-d5d5-43b1-b694-38ba240dd081? 200 18ms","method":"GET","requestID":"00177980-782b-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/762ee978-d5d5-43b1-b694-38ba240dd081?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f915761-355e-437c-b6f8-e16aa3fec712"},"level":"info","message":"Setting up experiment","requestID":"d6a346bf337c2e6d82c64c9ed48fab19"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f915761-355e-437c-b6f8-e16aa3fec712"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"d6a346bf337c2e6d82c64c9ed48fab19"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f915761-355e-437c-b6f8-e16aa3fec712"},"level":"info","message":"Successfully locked booking for experiment","requestID":"d6a346bf337c2e6d82c64c9ed48fab19"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f915761-355e-437c-b6f8-e16aa3fec712"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"d6a346bf337c2e6d82c64c9ed48fab19"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f915761-355e-437c-b6f8-e16aa3fec712"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"d6a346bf337c2e6d82c64c9ed48fab19"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f915761-355e-437c-b6f8-e16aa3fec712"},"level":"info","message":"Attempting to update booking for experiment","requestID":"d6a346bf337c2e6d82c64c9ed48fab19"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f915761-355e-437c-b6f8-e16aa3fec712"},"level":"info","message":"Successfully updated booking for experiment","requestID":"d6a346bf337c2e6d82c64c9ed48fab19"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f915761-355e-437c-b6f8-e16aa3fec712"},"level":"info","message":"Successfully set up experiment","requestID":"d6a346bf337c2e6d82c64c9ed48fab19"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"00213d80-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"00216490-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"00218ba0-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f915761-355e-437c-b6f8-e16aa3fec712"},"level":"info","message":"Successfully running experiment","requestID":"d6a346bf337c2e6d82c64c9ed48fab19"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1104,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1104,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.086669,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1105,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"00213d80-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931155,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"00213d80-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1105,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.054885,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"client_addr":"127.0.0.1:59846","level":"info","msg":"Received request.","req_id":1106,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"00216490-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931155,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"00216490-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6d202fad-bacd-42f1-9356-0c5d0bb0e157","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.2995257} authorization-1 | {"client_addr":"127.0.0.1:59846","level":"info","msg":"Sent response.","req_id":1106,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.843664,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"00218ba0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"00218ba0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"00218ba0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:54.531627539Z"}]},"request_id":"c02a9015-51f8-4ed1-8e7e-89194832cb88","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.3034966} device-1 | {"level":"info","message":"POST /devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085/signaling 200 14ms","method":"POST","requestID":"00218ba0-782b-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"00213d80-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F762ee978-d5d5-43b1-b694-38ba240dd081","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F762ee978-d5d5-43b1-b694-38ba240dd081","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:54.586894934Z"}]},"request_id":"c66fd369-dc52-4558-a0f1-4214c829fb04","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.3044512} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"00216490-782b-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0023fca0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1107,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"00213d80-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085? 200 22ms","method":"GET","requestID":"00213d80-782b-11ef-88d4-5fea3f61bb98","responseTime":22,"status":200,"url":"/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F762ee978-d5d5-43b1-b694-38ba240dd081","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"50244433-7840-4fb9-bc06-2851fe0044ad","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.3105328} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"00216490-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/762ee978-d5d5-43b1-b694-38ba240dd081? 200 22ms","method":"GET","requestID":"00216490-782b-11ef-88d4-5fea3f61bb98","responseTime":22,"status":200,"url":"/devices/762ee978-d5d5-43b1-b694-38ba240dd081?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1107,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.721294,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0023fca0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0023fca0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"00253520-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0023fca0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/762ee978-d5d5-43b1-b694-38ba240dd081/signaling 200 10ms","method":"POST","requestID":"0023fca0-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/762ee978-d5d5-43b1-b694-38ba240dd081/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7f915761-355e-437c-b6f8-e16aa3fec712#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7f915761-355e-437c-b6f8-e16aa3fec712","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"1693c0b0-78c1-4c36-88d0-3630c82db1ce","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.3164382} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"025fa8bc-da5e-43d8-9450-82ca8fb33016","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.31666} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"d6a346bf337c2e6d82c64c9ed48fab19","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d3db6fef-a72f-4293-baf0-5f02fc814f74","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.3196023} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1108,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1108,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.554944,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"00253520-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"00253520-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"00253520-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085/signaling 200 10ms","method":"POST","requestID":"00253520-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/7f915761-355e-437c-b6f8-e16aa3fec712","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"d6a346bf337c2e6d82c64c9ed48fab19"} gateway-1 | {"time_local":"21/Sep/2024:15:05:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1296","request_time":"0.150","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d6a346bf337c2e6d82c64c9ed48fab19"} experiment-1 | {"level":"info","message":"POST /experiments? 201 145ms","method":"POST","requestID":"d6a346bf337c2e6d82c64c9ed48fab19","responseTime":145,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"002730f0-782b-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo","level":"info","message":"auth send jwt","requestID":"bfd7a6ba680b1fcd8884b16741b0a21c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1109,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bfd7a6ba680b1fcd8884b16741b0a21c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bfd7a6ba680b1fcd8884b16741b0a21c"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F762ee978-d5d5-43b1-b694-38ba240dd081","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9e717d22-a291-48f1-a074-12d96a66784d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.3317206} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1109,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.495242,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1110,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"002730f0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"002730f0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1110,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.724969,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bfd7a6ba680b1fcd8884b16741b0a21c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931155,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bfd7a6ba680b1fcd8884b16741b0a21c","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"002730f0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/762ee978-d5d5-43b1-b694-38ba240dd081/signaling 200 10ms","method":"POST","requestID":"002730f0-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/762ee978-d5d5-43b1-b694-38ba240dd081/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:54.531627539Z"}]},"request_id":"f1529e60-29da-4fa0-a3ef-20a7e5633cb0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.3379998} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f915761-355e-437c-b6f8-e16aa3fec712"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"d6a346bf337c2e6d82c64c9ed48fab19"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"bfd7a6ba680b1fcd8884b16741b0a21c","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"00292cc0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"00292cc1-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bfd7a6ba680b1fcd8884b16741b0a21c"} gateway-1 | {"time_local":"21/Sep/2024:15:05:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bfd7a6ba680b1fcd8884b16741b0a21c"} device-1 | {"level":"info","message":"GET /devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085? 200 12ms","method":"GET","requestID":"bfd7a6ba680b1fcd8884b16741b0a21c","responseTime":12,"status":200,"url":"/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1111,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1111,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.917772,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"00292cc0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931155,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"00292cc0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1112,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1112,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.974538,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"00292cc1-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931155,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"00292cc1-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo","level":"info","message":"auth send jwt","requestID":"206ea9a8c283269e61ac132ff81f5e18"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"206ea9a8c283269e61ac132ff81f5e18","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"206ea9a8c283269e61ac132ff81f5e18"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:54.531627539Z"}]},"request_id":"58e2e2ff-f6c3-4a01-82dd-900650e5f8ce","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.3472846} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"00292cc0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F762ee978-d5d5-43b1-b694-38ba240dd081","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F762ee978-d5d5-43b1-b694-38ba240dd081","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:54.586894934Z"}]},"request_id":"4a94a308-ce8d-4e98-be2f-dcee9810d4d3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.3481803} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"00292cc0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"00292cc1-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1113,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1113,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.723055,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} device-1 | {"level":"info","message":"GET /devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085? 200 10ms","method":"GET","requestID":"00292cc0-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"206ea9a8c283269e61ac132ff81f5e18","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931155,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"206ea9a8c283269e61ac132ff81f5e18","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"00292cc1-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/762ee978-d5d5-43b1-b694-38ba240dd081? 200 14ms","method":"GET","requestID":"00292cc1-782b-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/762ee978-d5d5-43b1-b694-38ba240dd081?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F762ee978-d5d5-43b1-b694-38ba240dd081","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F762ee978-d5d5-43b1-b694-38ba240dd081","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:54.586894934Z"}]},"request_id":"a69fa31e-0cfa-4c80-8526-13ff75379db2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.3545606} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f915761-355e-437c-b6f8-e16aa3fec712"},"level":"info","message":"Building connection plan","requestID":"d6a346bf337c2e6d82c64c9ed48fab19"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"fa5be5eb-226b-404f-a1ff-fff9fe28f96c"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"bbd7e986-5001-40ac-85bb-af90c3b663c3"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"869066e4-de3f-4d36-a6be-9c7a3adb71a6"}]},"level":"info","message":"Built pairwise service configurations","requestID":"d6a346bf337c2e6d82c64c9ed48fab19"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"206ea9a8c283269e61ac132ff81f5e18","responseTime":2,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"002b9dc0-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"002b9dc0-782b-11ef-938d-0b888d58857d"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"206ea9a8c283269e61ac132ff81f5e18"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"002b9dc0-782b-11ef-938d-0b888d58857d","responseTime":1,"status":201,"url":"/rooms"} gateway-1 | {"time_local":"21/Sep/2024:15:05:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/762ee978-d5d5-43b1-b694-38ba240dd081? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"206ea9a8c283269e61ac132ff81f5e18"} device-1 | {"level":"info","message":"GET /devices/762ee978-d5d5-43b1-b694-38ba240dd081? 200 11ms","method":"GET","requestID":"206ea9a8c283269e61ac132ff81f5e18","responseTime":11,"status":200,"url":"/devices/762ee978-d5d5-43b1-b694-38ba240dd081?"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/c2f0b48e-7f6b-47bd-9188-658b1c055d97?id=b7839808-0d1e-47d8-a327-d0ff28eec106","ws://localhost/rooms/c2f0b48e-7f6b-47bd-9188-658b1c055d97?id=b8342d29-0831-4f67-81e4-7c5bd6ae8693"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"d6a346bf337c2e6d82c64c9ed48fab19"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"002c12f0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1114,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1114,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.955949,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"002c12f0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931155,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"002c12f0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"3ef6e86d-64a6-4f60-abb2-5c48025acd32","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.3708692} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fd74f61a-8682-4a55-b90d-738a0dac5deb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.371105} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"002c12f0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"002c12f0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"002c12f0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/0853a7cd-3a10-4b5a-bab1-88d09480320b'","requestID":"002c12f0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/0853a7cd-3a10-4b5a-bab1-88d09480320b'","requestID":"002c12f0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"002c12f0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 24ms","method":"POST","requestID":"002c12f0-782b-11ef-88d4-5fea3f61bb98","responseTime":24,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"002c12f0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/0853a7cd-3a10-4b5a-bab1-88d09480320b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0853a7cd-3a10-4b5a-bab1-88d09480320b","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"00311c00-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b7839808-0d1e-47d8-a327-d0ff28eec106\" in room \"http://localhost/rooms/c2f0b48e-7f6b-47bd-9188-658b1c055d97\"","requestID":"00311c00-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"00311c00-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"00314310-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b8342d29-0831-4f67-81e4-7c5bd6ae8693\" in room \"http://localhost/rooms/c2f0b48e-7f6b-47bd-9188-658b1c055d97\"","requestID":"00314310-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"00314310-782b-11ef-938d-0b888d58857d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"793a28ef5e26ab08291d16e1d8c3cd6e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b7839808-0d1e-47d8-a327-d0ff28eec106\" in room \"http://localhost/rooms/c2f0b48e-7f6b-47bd-9188-658b1c055d97\""} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"793a28ef5e26ab08291d16e1d8c3cd6e","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b7839808-0d1e-47d8-a327-d0ff28eec106\" in room \"http://localhost/rooms/c2f0b48e-7f6b-47bd-9188-658b1c055d97\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b7839808-0d1e-47d8-a327-d0ff28eec106\" in room \"http://localhost/rooms/c2f0b48e-7f6b-47bd-9188-658b1c055d97\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b7839808-0d1e-47d8-a327-d0ff28eec106\" in room \"http://localhost/rooms/c2f0b48e-7f6b-47bd-9188-658b1c055d97\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b7839808-0d1e-47d8-a327-d0ff28eec106\" in room \"http://localhost/rooms/c2f0b48e-7f6b-47bd-9188-658b1c055d97\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b7839808-0d1e-47d8-a327-d0ff28eec106\" in room \"http://localhost/rooms/c2f0b48e-7f6b-47bd-9188-658b1c055d97\""} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/0853a7cd-3a10-4b5a-bab1-88d09480320b"}}},"level":"info","message":"received a callback","requestID":"793a28ef5e26ab08291d16e1d8c3cd6e"} device-1 | {"data":{"peerconnection":"0853a7cd-3a10-4b5a-bab1-88d09480320b","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"793a28ef5e26ab08291d16e1d8c3cd6e","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"793a28ef5e26ab08291d16e1d8c3cd6e"} device-1 | {"data":{"peerconnection":"0853a7cd-3a10-4b5a-bab1-88d09480320b","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f915761-355e-437c-b6f8-e16aa3fec712"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"d6a346bf337c2e6d82c64c9ed48fab19"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"003561c0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1115,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0b552b6a-e3ca-4514-9a04-27c9fd82413a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.4254763} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1115,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.916745,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"003561c0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/0853a7cd-3a10-4b5a-bab1-88d09480320b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0853a7cd-3a10-4b5a-bab1-88d09480320b","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"003561c0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fc7c57b465ba6b87f058692047dcd64e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fc7c57b465ba6b87f058692047dcd64e","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/0853a7cd-3a10-4b5a-bab1-88d09480320b"}}},"level":"info","message":"received a callback","requestID":"fc7c57b465ba6b87f058692047dcd64e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"003561c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085/signaling 200 11ms","method":"POST","requestID":"003561c0-782b-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"00375d90-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1116,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"0037d2c0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F762ee978-d5d5-43b1-b694-38ba240dd081","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8ba9ac76-85e1-4525-aa5a-b94e96375d6d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.4378703} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1116,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.599208,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1117,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"00375d90-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"00375d90-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0853a7cd-3a10-4b5a-bab1-88d09480320b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b3d1e25f-a7c1-44b7-bfc4-a7dc809e38cb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.440616} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1117,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.280409,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0853a7cd-3a10-4b5a-bab1-88d09480320b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0037d2c0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/0853a7cd-3a10-4b5a-bab1-88d09480320b","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"00375d90-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/762ee978-d5d5-43b1-b694-38ba240dd081/signaling 200 9ms","method":"POST","requestID":"00375d90-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/762ee978-d5d5-43b1-b694-38ba240dd081/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0037d2c0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"0037d2c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/0853a7cd-3a10-4b5a-bab1-88d09480320b 200 8ms","method":"GET","requestID":"0037d2c0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/peerconnections/0853a7cd-3a10-4b5a-bab1-88d09480320b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 27ms","method":"POST","requestID":"fc7c57b465ba6b87f058692047dcd64e","responseTime":27,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.030","http_referrer":"","http_user_agent":"node-fetch","requestID":"fc7c57b465ba6b87f058692047dcd64e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"003b2e20-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1118,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F762ee978-d5d5-43b1-b694-38ba240dd081","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e8df395f-1bff-4cee-aa6f-1dbed2984baf","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.4641747} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1118,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.725455,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"003b2e20-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"003b2e20-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"003b2e20-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/762ee978-d5d5-43b1-b694-38ba240dd081/signaling 200 11ms","method":"POST","requestID":"003b2e20-782b-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/762ee978-d5d5-43b1-b694-38ba240dd081/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"003d29f0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1119,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"90719ef3-1ba2-4818-8f8b-21c52ddca92d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.4764833} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1119,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.343663,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"003d29f0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"003d29f0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"003d29f0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085/signaling 200 9ms","method":"POST","requestID":"003d29f0-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo","level":"info","message":"auth send jwt","requestID":"765930a7e262e962a9502cc9d0135a85"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"765930a7e262e962a9502cc9d0135a85","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/7f915761-355e-437c-b6f8-e16aa3fec712","requestID":"765930a7e262e962a9502cc9d0135a85"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1120,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1120,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.689628,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7f915761-355e-437c-b6f8-e16aa3fec712","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"765930a7e262e962a9502cc9d0135a85","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/7f915761-355e-437c-b6f8-e16aa3fec712","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931155,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"765930a7e262e962a9502cc9d0135a85","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/7f915761-355e-437c-b6f8-e16aa3fec712","requestID":"765930a7e262e962a9502cc9d0135a85"} gateway-1 | {"time_local":"21/Sep/2024:15:05:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/7f915761-355e-437c-b6f8-e16aa3fec712 HTTP/1.1","status": "200","body_bytes_sent":"1369","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"765930a7e262e962a9502cc9d0135a85"} experiment-1 | {"level":"info","message":"GET /experiments/7f915761-355e-437c-b6f8-e16aa3fec712 200 14ms","method":"GET","requestID":"765930a7e262e962a9502cc9d0135a85","responseTime":14,"status":200,"url":"/experiments/7f915761-355e-437c-b6f8-e16aa3fec712"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo","level":"info","message":"auth send jwt","requestID":"7ee1d435a37379908072f59dcf0409b4"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7ee1d435a37379908072f59dcf0409b4","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/7f915761-355e-437c-b6f8-e16aa3fec712","requestID":"7ee1d435a37379908072f59dcf0409b4"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1121,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1121,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.909824,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7f915761-355e-437c-b6f8-e16aa3fec712","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"7ee1d435a37379908072f59dcf0409b4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/7f915761-355e-437c-b6f8-e16aa3fec712","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931155,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7ee1d435a37379908072f59dcf0409b4","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f915761-355e-437c-b6f8-e16aa3fec712"},"level":"info","message":"Attempting to finish experiment","requestID":"7ee1d435a37379908072f59dcf0409b4"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"00469fd0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1122,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1122,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.767546,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0853a7cd-3a10-4b5a-bab1-88d09480320b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"00469fd0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/0853a7cd-3a10-4b5a-bab1-88d09480320b","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931155,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"00469fd0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:05:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/c2f0b48e-7f6b-47bd-9188-658b1c055d97?id=b7839808-0d1e-47d8-a327-d0ff28eec106 HTTP/1.1","status": "101","body_bytes_sent":"916","request_time":"0.152","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"fdf4cc3a26437d2aca75aeb0759be68f"} gateway-1 | {"time_local":"21/Sep/2024:15:05:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/c2f0b48e-7f6b-47bd-9188-658b1c055d97?id=b8342d29-0831-4f67-81e4-7c5bd6ae8693 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.152","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"68c551025e75388a341e99b7826c442c"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"b7839808-0d1e-47d8-a327-d0ff28eec106\" in room \"http://localhost/rooms/c2f0b48e-7f6b-47bd-9188-658b1c055d97\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"b7839808-0d1e-47d8-a327-d0ff28eec106\" from room \"http://localhost/rooms/c2f0b48e-7f6b-47bd-9188-658b1c055d97\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"b8342d29-0831-4f67-81e4-7c5bd6ae8693\" in room \"http://localhost/rooms/c2f0b48e-7f6b-47bd-9188-658b1c055d97\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"b8342d29-0831-4f67-81e4-7c5bd6ae8693\" from room \"http://localhost/rooms/c2f0b48e-7f6b-47bd-9188-658b1c055d97\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/0853a7cd-3a10-4b5a-bab1-88d09480320b' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/0853a7cd-3a10-4b5a-bab1-88d09480320b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0853a7cd-3a10-4b5a-bab1-88d09480320b","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6f5c33ff4ceea8e7e38cbb98045cf6b7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6f5c33ff4ceea8e7e38cbb98045cf6b7","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0853a7cd-3a10-4b5a-bab1-88d09480320b': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0853a7cd-3a10-4b5a-bab1-88d09480320b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"24372032-c8f3-426b-be4a-185a8947bc5c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.5501087} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dc81c465484bdbef28217e52512b2454","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e13c6e52-d88d-4df2-b61c-3cb463f6ebf4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.5504797} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/0853a7cd-3a10-4b5a-bab1-88d09480320b"}}},"level":"info","message":"received a callback","requestID":"6f5c33ff4ceea8e7e38cbb98045cf6b7"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"dc81c465484bdbef28217e52512b2454","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"00469fd0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/0853a7cd-3a10-4b5a-bab1-88d09480320b"}}},"level":"info","message":"received a callback","requestID":"dc81c465484bdbef28217e52512b2454"} device-1 | {"data":{"peerconnection":"0853a7cd-3a10-4b5a-bab1-88d09480320b","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"00469fd0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/0853a7cd-3a10-4b5a-bab1-88d09480320b 204 36ms","method":"DELETE","requestID":"00469fd0-782b-11ef-88d4-5fea3f61bb98","responseTime":36,"status":204,"url":"/peerconnections/0853a7cd-3a10-4b5a-bab1-88d09480320b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f915761-355e-437c-b6f8-e16aa3fec712"},"level":"info","message":"Successfully finished experiment","requestID":"7ee1d435a37379908072f59dcf0409b4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"004eb620-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1123,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F762ee978-d5d5-43b1-b694-38ba240dd081","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"926682f7-15a0-4b68-9e96-e85665b70360","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.5926247} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1123,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.165871,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"004eb620-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"004eb620-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"004eb620-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/762ee978-d5d5-43b1-b694-38ba240dd081/signaling 200 12ms","method":"POST","requestID":"004eb620-782b-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/762ee978-d5d5-43b1-b694-38ba240dd081/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7f915761-355e-437c-b6f8-e16aa3fec712': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7f915761-355e-437c-b6f8-e16aa3fec712","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"34e7a0a7-91cd-48e6-a3a0-68a91f4ce627","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.5982606} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d566ef57-0d43-4cdd-822e-f428d9ccc1a5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.5987453} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"7ee1d435a37379908072f59dcf0409b4","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0050d900-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1124,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"77c12248-5110-4bd7-950a-d7dd83912482","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.605882} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1124,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.146324,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0050d900-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0050d900-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0050d900-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085/signaling 200 14ms","method":"POST","requestID":"0050d900-782b-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/7f915761-355e-437c-b6f8-e16aa3fec712","requestID":"7ee1d435a37379908072f59dcf0409b4"} gateway-1 | {"time_local":"21/Sep/2024:15:05:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/7f915761-355e-437c-b6f8-e16aa3fec712 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.142","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7ee1d435a37379908072f59dcf0409b4"} experiment-1 | {"level":"info","message":"DELETE /experiments/7f915761-355e-437c-b6f8-e16aa3fec712 204 137ms","method":"DELETE","requestID":"7ee1d435a37379908072f59dcf0409b4","responseTime":137,"status":204,"url":"/experiments/7f915761-355e-437c-b6f8-e16aa3fec712"} gateway-1 | {"time_local":"21/Sep/2024:15:05:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2106","request_time":"0.543","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"28d0a90154f8c9f47118222f8b659a30"} gateway-1 | {"time_local":"21/Sep/2024:15:05:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2107","request_time":"0.552","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"6fc6a0a62e9d2023ccd1ed3d15e308d1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"6f5c33ff4ceea8e7e38cbb98045cf6b7","responseTime":114,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.118","http_referrer":"","http_user_agent":"node-fetch","requestID":"6f5c33ff4ceea8e7e38cbb98045cf6b7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"dc81c465484bdbef28217e52512b2454","responseTime":114,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.119","http_referrer":"","http_user_agent":"node-fetch","requestID":"dc81c465484bdbef28217e52512b2454"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo","level":"info","message":"auth send jwt","requestID":"9d9314a9d5bc38bc0c0187e0ec7abda1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9d9314a9d5bc38bc0c0187e0ec7abda1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/37f3bc7e-7f9b-4c65-ae2a-03ff2dff3085' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"9d9314a9d5bc38bc0c0187e0ec7abda1"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1125,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1125,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.912967,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"9d9314a9d5bc38bc0c0187e0ec7abda1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931155,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9d9314a9d5bc38bc0c0187e0ec7abda1","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/762ee978-d5d5-43b1-b694-38ba240dd081' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4f7e9447-e262-4914-9818-408fcd77d6d1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.6872308} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9d9314a9d5bc38bc0c0187e0ec7abda1","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f37afb55-094a-421d-8907-6f77a262449b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.6920362} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"9d9314a9d5bc38bc0c0187e0ec7abda1","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"cee01cbd-c7b4-4feb-a8d8-90ebd0336c84","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.7007616} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ec1221b6-daa8-4718-92be-d0af1a6f307e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.7013838} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"9d9314a9d5bc38bc0c0187e0ec7abda1","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:55.700726363Z"}]},"request_id":"efc571b1-11d7-4515-a294-0ffa52b41fc4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.7063801} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9d9314a9d5bc38bc0c0187e0ec7abda1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9d9314a9d5bc38bc0c0187e0ec7abda1"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"9d9314a9d5bc38bc0c0187e0ec7abda1","responseTime":39,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9d9314a9d5bc38bc0c0187e0ec7abda1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo","level":"info","message":"auth send jwt","requestID":"2aed1ea1ad6bcb62d037e44ac79000c5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2aed1ea1ad6bcb62d037e44ac79000c5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2aed1ea1ad6bcb62d037e44ac79000c5"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1126,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1126,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.671769,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"2aed1ea1ad6bcb62d037e44ac79000c5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931155,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1NX0.aSWbiQmdPEg1RWvZ28tvVOnIjtRqz4H3pVvREfx7CCo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2aed1ea1ad6bcb62d037e44ac79000c5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40a63c09-b001-4472-a5ef-fba954669c6c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ba14bd24-1237-443d-a2a2-100835f21260","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.736517} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2aed1ea1ad6bcb62d037e44ac79000c5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e3d35dcf-68d5-4031-9aa1-4abfef19e609","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.7416246} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"2aed1ea1ad6bcb62d037e44ac79000c5","responseTime":9,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4083822b-6f27-4bec-94ab-eadeae72b9ca","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.75131} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40a63c09-b001-4472-a5ef-fba954669c6c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"21132fcb-f207-414d-8221-3cabf358dde8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.7514904} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"2aed1ea1ad6bcb62d037e44ac79000c5","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40a63c09-b001-4472-a5ef-fba954669c6c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40a63c09-b001-4472-a5ef-fba954669c6c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:55.751449853Z"}]},"request_id":"692aad20-2fe8-41e7-802e-5fcb8ca40615","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931155.7575734} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2aed1ea1ad6bcb62d037e44ac79000c5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2aed1ea1ad6bcb62d037e44ac79000c5"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"2aed1ea1ad6bcb62d037e44ac79000c5","responseTime":47,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2aed1ea1ad6bcb62d037e44ac79000c5"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"39490861bad73a58e2addd0e4883f2ab","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"39490861bad73a58e2addd0e4883f2ab","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/40a63c09-b001-4472-a5ef-fba954669c6c/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"39490861bad73a58e2addd0e4883f2ab"} device-1 | {"level":"info","message":"OPTIONS /devices/40a63c09-b001-4472-a5ef-fba954669c6c/websocket 200 1ms","method":"OPTIONS","requestID":"39490861bad73a58e2addd0e4883f2ab","responseTime":1,"status":200,"url":"/devices/40a63c09-b001-4472-a5ef-fba954669c6c/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1N30.mShsGAWCvz-xzHzvG1mQU_jV03jICdbZtWJnkUNy4xA","level":"info","message":"auth send jwt","requestID":"6608c5dd0108d670c7b4cbad1b6ad0d6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6608c5dd0108d670c7b4cbad1b6ad0d6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6608c5dd0108d670c7b4cbad1b6ad0d6"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1127,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:57Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1127,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.122619,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"6608c5dd0108d670c7b4cbad1b6ad0d6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931157,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1N30.mShsGAWCvz-xzHzvG1mQU_jV03jICdbZtWJnkUNy4xA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6608c5dd0108d670c7b4cbad1b6ad0d6","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"70f91503f797dad70e4c1cd2b39b83b7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"70f91503f797dad70e4c1cd2b39b83b7","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"70f91503f797dad70e4c1cd2b39b83b7"} device-1 | {"level":"info","message":"OPTIONS /devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d/websocket 200 1ms","method":"OPTIONS","requestID":"70f91503f797dad70e4c1cd2b39b83b7","responseTime":1,"status":200,"url":"/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6608c5dd0108d670c7b4cbad1b6ad0d6"} gateway-1 | {"time_local":"21/Sep/2024:15:05:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/40a63c09-b001-4472-a5ef-fba954669c6c/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6608c5dd0108d670c7b4cbad1b6ad0d6"} device-1 | {"level":"info","message":"POST /devices/40a63c09-b001-4472-a5ef-fba954669c6c/websocket 200 23ms","method":"POST","requestID":"6608c5dd0108d670c7b4cbad1b6ad0d6","responseTime":23,"status":200,"url":"/devices/40a63c09-b001-4472-a5ef-fba954669c6c/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1N30.mShsGAWCvz-xzHzvG1mQU_jV03jICdbZtWJnkUNy4xA","level":"info","message":"auth send jwt","requestID":"0b5d3627cf1a40012676e117c356cac7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0b5d3627cf1a40012676e117c356cac7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0b5d3627cf1a40012676e117c356cac7"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1128,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:57Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1128,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.909618,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0b5d3627cf1a40012676e117c356cac7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931157,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1N30.mShsGAWCvz-xzHzvG1mQU_jV03jICdbZtWJnkUNy4xA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0b5d3627cf1a40012676e117c356cac7","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0b5d3627cf1a40012676e117c356cac7"} device-1 | {"level":"info","message":"POST /devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d/websocket 200 25ms","method":"POST","requestID":"0b5d3627cf1a40012676e117c356cac7","responseTime":25,"status":200,"url":"/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:05:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0b5d3627cf1a40012676e117c356cac7"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8b07beeb6f6d380c6833c7a4c046e523","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8b07beeb6f6d380c6833c7a4c046e523","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/40a63c09-b001-4472-a5ef-fba954669c6c? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.002","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"8b07beeb6f6d380c6833c7a4c046e523"} device-1 | {"level":"info","message":"OPTIONS /devices/40a63c09-b001-4472-a5ef-fba954669c6c? 200 1ms","method":"OPTIONS","requestID":"8b07beeb6f6d380c6833c7a4c046e523","responseTime":1,"status":200,"url":"/devices/40a63c09-b001-4472-a5ef-fba954669c6c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1N30.mShsGAWCvz-xzHzvG1mQU_jV03jICdbZtWJnkUNy4xA","level":"info","message":"auth send jwt","requestID":"4a8e81a45ad31f31918454e31b9db8c0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4a8e81a45ad31f31918454e31b9db8c0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4a8e81a45ad31f31918454e31b9db8c0"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1129,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:57Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1129,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.776164,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"4a8e81a45ad31f31918454e31b9db8c0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931157,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1N30.mShsGAWCvz-xzHzvG1mQU_jV03jICdbZtWJnkUNy4xA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4a8e81a45ad31f31918454e31b9db8c0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d' connected"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40a63c09-b001-4472-a5ef-fba954669c6c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40a63c09-b001-4472-a5ef-fba954669c6c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:55.751449853Z"}]},"request_id":"c3be2d28-4cea-4d57-ac97-484529c09902","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931157.8002417} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4a8e81a45ad31f31918454e31b9db8c0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"439711a9-19f9-4de9-9f32-38787926c1b5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931157.8063068} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"4a8e81a45ad31f31918454e31b9db8c0","responseTime":4,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"03838ac91ae7c63e9a47f769df60212e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"03838ac91ae7c63e9a47f769df60212e","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:05:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.002","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"03838ac91ae7c63e9a47f769df60212e"} device-1 | {"level":"info","message":"OPTIONS /devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d? 200 0ms","method":"OPTIONS","requestID":"03838ac91ae7c63e9a47f769df60212e","responseTime":0,"status":200,"url":"/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1N30.mShsGAWCvz-xzHzvG1mQU_jV03jICdbZtWJnkUNy4xA","level":"info","message":"auth send jwt","requestID":"b5a0db414fea4415d4393c5a59c23143"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b5a0db414fea4415d4393c5a59c23143","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b5a0db414fea4415d4393c5a59c23143"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1130,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:57Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1130,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.655411,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b5a0db414fea4415d4393c5a59c23143","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931157,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1N30.mShsGAWCvz-xzHzvG1mQU_jV03jICdbZtWJnkUNy4xA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b5a0db414fea4415d4393c5a59c23143","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40a63c09-b001-4472-a5ef-fba954669c6c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40a63c09-b001-4472-a5ef-fba954669c6c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:55.751449853Z"}]},"request_id":"2c7d5751-8185-4f89-ae0f-40c0fa26ee04","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931157.8220844} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4a8e81a45ad31f31918454e31b9db8c0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4a8e81a45ad31f31918454e31b9db8c0"} gateway-1 | {"time_local":"21/Sep/2024:15:05:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/40a63c09-b001-4472-a5ef-fba954669c6c? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.046","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4a8e81a45ad31f31918454e31b9db8c0"} device-1 | {"level":"info","message":"PATCH /devices/40a63c09-b001-4472-a5ef-fba954669c6c? 200 41ms","method":"PATCH","requestID":"4a8e81a45ad31f31918454e31b9db8c0","responseTime":41,"status":200,"url":"/devices/40a63c09-b001-4472-a5ef-fba954669c6c?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:55.700726363Z"}]},"request_id":"b03f02ad-b2df-4a2e-bb5d-6422c9e105b4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931157.8339763} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b5a0db414fea4415d4393c5a59c23143","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b3277067-60b0-4a81-9cfe-22ad6650f320","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931157.8404589} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"b5a0db414fea4415d4393c5a59c23143","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:55.700726363Z"}]},"request_id":"a481cf69-358f-4ea7-9504-a850c0c0b06d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931157.8520598} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b5a0db414fea4415d4393c5a59c23143","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b5a0db414fea4415d4393c5a59c23143"} gateway-1 | {"time_local":"21/Sep/2024:15:05:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.042","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b5a0db414fea4415d4393c5a59c23143"} device-1 | {"level":"info","message":"PATCH /devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d? 200 38ms","method":"PATCH","requestID":"b5a0db414fea4415d4393c5a59c23143","responseTime":38,"status":200,"url":"/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1N30.mShsGAWCvz-xzHzvG1mQU_jV03jICdbZtWJnkUNy4xA","level":"info","message":"auth send jwt","requestID":"e992988302ae9acc55094d60fe85ca64"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e992988302ae9acc55094d60fe85ca64","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e992988302ae9acc55094d60fe85ca64"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1131,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:57Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1131,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.105721,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e992988302ae9acc55094d60fe85ca64","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931157,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1N30.mShsGAWCvz-xzHzvG1mQU_jV03jICdbZtWJnkUNy4xA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e992988302ae9acc55094d60fe85ca64","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:55.700726363Z"}]},"request_id":"40f4fef9-a539-414d-aaf6-7e6b836935a2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931157.8747342} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e992988302ae9acc55094d60fe85ca64","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e992988302ae9acc55094d60fe85ca64"} gateway-1 | {"time_local":"21/Sep/2024:15:05:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e992988302ae9acc55094d60fe85ca64"} device-1 | {"level":"info","message":"GET /devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d? 200 13ms","method":"GET","requestID":"e992988302ae9acc55094d60fe85ca64","responseTime":13,"status":200,"url":"/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1N30.mShsGAWCvz-xzHzvG1mQU_jV03jICdbZtWJnkUNy4xA","level":"info","message":"auth send jwt","requestID":"500d9193cb62824c60cbfda25ee7b2f3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"500d9193cb62824c60cbfda25ee7b2f3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"500d9193cb62824c60cbfda25ee7b2f3"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1132,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:57Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1132,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.103243,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"500d9193cb62824c60cbfda25ee7b2f3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931157,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1N30.mShsGAWCvz-xzHzvG1mQU_jV03jICdbZtWJnkUNy4xA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"500d9193cb62824c60cbfda25ee7b2f3","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40a63c09-b001-4472-a5ef-fba954669c6c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40a63c09-b001-4472-a5ef-fba954669c6c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:55.751449853Z"}]},"request_id":"16dfd3de-b265-4ecf-af5a-b8aa3ca09388","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931157.8958964} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"500d9193cb62824c60cbfda25ee7b2f3","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"500d9193cb62824c60cbfda25ee7b2f3"} device-1 | {"level":"info","message":"GET /devices/40a63c09-b001-4472-a5ef-fba954669c6c? 200 16ms","method":"GET","requestID":"500d9193cb62824c60cbfda25ee7b2f3","responseTime":16,"status":200,"url":"/devices/40a63c09-b001-4472-a5ef-fba954669c6c?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/40a63c09-b001-4472-a5ef-fba954669c6c? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"500d9193cb62824c60cbfda25ee7b2f3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1N30.mShsGAWCvz-xzHzvG1mQU_jV03jICdbZtWJnkUNy4xA","level":"info","message":"auth send jwt","requestID":"dfa0ddf6ad8dad6aa6d662848ef5d318"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"dfa0ddf6ad8dad6aa6d662848ef5d318","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"dfa0ddf6ad8dad6aa6d662848ef5d318"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1133,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:57Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1133,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.108327,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dfa0ddf6ad8dad6aa6d662848ef5d318","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931157,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1N30.mShsGAWCvz-xzHzvG1mQU_jV03jICdbZtWJnkUNy4xA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"dfa0ddf6ad8dad6aa6d662848ef5d318","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c"},"level":"info","message":"Attempting to run experiment","requestID":"dfa0ddf6ad8dad6aa6d662848ef5d318"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c"},"level":"info","message":"Attempting to book experiment","requestID":"dfa0ddf6ad8dad6aa6d662848ef5d318"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c"},"level":"info","message":"Successfully booked experiment","requestID":"dfa0ddf6ad8dad6aa6d662848ef5d318"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"01b76de0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"01b7bc00-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1134,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:57Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1134,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.841441,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:57Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1135,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"01b76de0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931157,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1N30.mShsGAWCvz-xzHzvG1mQU_jV03jICdbZtWJnkUNy4xA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"01b76de0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1135,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.936956,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"01b7bc00-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931157,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1N30.mShsGAWCvz-xzHzvG1mQU_jV03jICdbZtWJnkUNy4xA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"01b7bc00-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:55.700726363Z"}]},"request_id":"96f819c4-e7a3-4072-b201-b815aa4b3601","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931157.9611726} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"01b76de0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40a63c09-b001-4472-a5ef-fba954669c6c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40a63c09-b001-4472-a5ef-fba954669c6c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:55.751449853Z"}]},"request_id":"de957eb2-150e-497a-98f0-c83bd3d9fcee","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931157.9625626} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"01b7bc00-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"01b76de0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d? 200 18ms","method":"GET","requestID":"01b76de0-782b-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"01b7bc00-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/40a63c09-b001-4472-a5ef-fba954669c6c? 200 17ms","method":"GET","requestID":"01b7bc00-782b-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/40a63c09-b001-4472-a5ef-fba954669c6c?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c"},"level":"info","message":"Setting up experiment","requestID":"dfa0ddf6ad8dad6aa6d662848ef5d318"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"dfa0ddf6ad8dad6aa6d662848ef5d318"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c"},"level":"info","message":"Successfully locked booking for experiment","requestID":"dfa0ddf6ad8dad6aa6d662848ef5d318"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"dfa0ddf6ad8dad6aa6d662848ef5d318"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"dfa0ddf6ad8dad6aa6d662848ef5d318"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c"},"level":"info","message":"Attempting to update booking for experiment","requestID":"dfa0ddf6ad8dad6aa6d662848ef5d318"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c"},"level":"info","message":"Successfully updated booking for experiment","requestID":"dfa0ddf6ad8dad6aa6d662848ef5d318"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c"},"level":"info","message":"Successfully set up experiment","requestID":"dfa0ddf6ad8dad6aa6d662848ef5d318"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"01c26a60-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"01c2b880-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"01c2df90-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c"},"level":"info","message":"Successfully running experiment","requestID":"dfa0ddf6ad8dad6aa6d662848ef5d318"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1136,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1136,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.952911,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1137,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"01c26a60-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931157,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1N30.mShsGAWCvz-xzHzvG1mQU_jV03jICdbZtWJnkUNy4xA"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"01c26a60-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1137,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.810531,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"client_addr":"127.0.0.1:59846","level":"info","msg":"Received request.","req_id":1138,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"01c2b880-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931157,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1N30.mShsGAWCvz-xzHzvG1mQU_jV03jICdbZtWJnkUNy4xA"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"01c2b880-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59846","level":"info","msg":"Sent response.","req_id":1138,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.218732,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d63538ce-16a2-4e08-b31f-2111512f53eb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.03246} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"01c2df90-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"01c2df90-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:55.700726363Z"}]},"request_id":"c0ca41e3-99ef-4af3-8ef7-89d4dc50fd6c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.0369759} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"01c2df90-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"01c26a60-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40a63c09-b001-4472-a5ef-fba954669c6c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40a63c09-b001-4472-a5ef-fba954669c6c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:55.751449853Z"}]},"request_id":"8cadb5fb-3ef8-40f9-a6c2-eece6f67cf2f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.039702} device-1 | {"level":"info","message":"POST /devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d/signaling 200 15ms","method":"POST","requestID":"01c2df90-782b-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"01c2b880-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"01c5c5c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"01c26a60-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1139,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:58Z"} device-1 | {"level":"info","message":"GET /devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d? 200 26ms","method":"GET","requestID":"01c26a60-782b-11ef-88d4-5fea3f61bb98","responseTime":26,"status":200,"url":"/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"01c2b880-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/40a63c09-b001-4472-a5ef-fba954669c6c? 200 25ms","method":"GET","requestID":"01c2b880-782b-11ef-88d4-5fea3f61bb98","responseTime":25,"status":200,"url":"/devices/40a63c09-b001-4472-a5ef-fba954669c6c?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40a63c09-b001-4472-a5ef-fba954669c6c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a5852691-1d4c-40d8-9193-aaa650967a24","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.0504348} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1139,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.863629,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:58Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"01c6fe40-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"01c5c5c0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"01c5c5c0-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff9ec52fc-e0f9-4458-a222-ac0ea00ff10c#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff9ec52fc-e0f9-4458-a222-ac0ea00ff10c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"9b24d1ae-7e49-49a4-b16e-b27134a7a2fb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.052678} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9502ed96-b69a-47dd-bf93-4bca2e5cc110","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.0531635} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"dfa0ddf6ad8dad6aa6d662848ef5d318","responseTime":25,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"01c5c5c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/40a63c09-b001-4472-a5ef-fba954669c6c/signaling 200 12ms","method":"POST","requestID":"01c5c5c0-782b-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/40a63c09-b001-4472-a5ef-fba954669c6c/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1140,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5f23748d-10e8-4a7a-a5fa-a830b0cc9967","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.0612838} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1140,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.749518,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"01c6fe40-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"01c6fe40-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"dfa0ddf6ad8dad6aa6d662848ef5d318"} gateway-1 | {"time_local":"21/Sep/2024:15:05:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1212","request_time":"0.163","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dfa0ddf6ad8dad6aa6d662848ef5d318"} experiment-1 | {"level":"info","message":"POST /experiments? 201 157ms","method":"POST","requestID":"dfa0ddf6ad8dad6aa6d662848ef5d318","responseTime":157,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"01c6fe40-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d/signaling 200 15ms","method":"POST","requestID":"01c6fe40-782b-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"01c9bd60-782b-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1OH0.EnnV8sXG_Yub9_c36QVrfdATvt4EDCON4HFMrdK0j_E","level":"info","message":"auth send jwt","requestID":"8aac8139805740415930f56fcf7e78fd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8aac8139805740415930f56fcf7e78fd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8aac8139805740415930f56fcf7e78fd"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1141,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40a63c09-b001-4472-a5ef-fba954669c6c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7e5ca7f1-47c7-483a-b082-fbc59a6b29e0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.076221} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1142,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1141,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.812429,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"01c9bd60-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"01c9bd60-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1142,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.998828,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"8aac8139805740415930f56fcf7e78fd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931158,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1OH0.EnnV8sXG_Yub9_c36QVrfdATvt4EDCON4HFMrdK0j_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8aac8139805740415930f56fcf7e78fd","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"01c9bd60-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/40a63c09-b001-4472-a5ef-fba954669c6c/signaling 200 12ms","method":"POST","requestID":"01c9bd60-782b-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/40a63c09-b001-4472-a5ef-fba954669c6c/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:55.700726363Z"}]},"request_id":"d326240c-63f3-4af0-874a-edb154c001c4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.083234} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"dfa0ddf6ad8dad6aa6d662848ef5d318"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8aac8139805740415930f56fcf7e78fd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"01cc2e60-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"01cc5570-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8aac8139805740415930f56fcf7e78fd"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1143,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1143,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.858076,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:58Z"} gateway-1 | {"time_local":"21/Sep/2024:15:05:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8aac8139805740415930f56fcf7e78fd"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1144,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:58Z"} device-1 | {"level":"info","message":"GET /devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d? 200 17ms","method":"GET","requestID":"8aac8139805740415930f56fcf7e78fd","responseTime":17,"status":200,"url":"/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"01cc2e60-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931157,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1N30.mShsGAWCvz-xzHzvG1mQU_jV03jICdbZtWJnkUNy4xA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"01cc2e60-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1144,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.888081,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"01cc5570-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931157,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1N30.mShsGAWCvz-xzHzvG1mQU_jV03jICdbZtWJnkUNy4xA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"01cc5570-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:55.700726363Z"}]},"request_id":"aa3093cb-a747-4b66-99f6-3ce807bc6b48","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.0958643} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1OH0.EnnV8sXG_Yub9_c36QVrfdATvt4EDCON4HFMrdK0j_E","level":"info","message":"auth send jwt","requestID":"72917ce8dceab713300728c324ad9526"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"72917ce8dceab713300728c324ad9526","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"72917ce8dceab713300728c324ad9526"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"01cc2e60-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40a63c09-b001-4472-a5ef-fba954669c6c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40a63c09-b001-4472-a5ef-fba954669c6c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:55.751449853Z"}]},"request_id":"116582c8-64b3-4a40-b7be-2ee9a8464512","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.09893} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"01cc5570-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1145,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1145,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.805073,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"72917ce8dceab713300728c324ad9526","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931158,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1OH0.EnnV8sXG_Yub9_c36QVrfdATvt4EDCON4HFMrdK0j_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"72917ce8dceab713300728c324ad9526","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"01cc2e60-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d? 200 20ms","method":"GET","requestID":"01cc2e60-782b-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"01cc5570-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40a63c09-b001-4472-a5ef-fba954669c6c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40a63c09-b001-4472-a5ef-fba954669c6c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:55.751449853Z"}]},"request_id":"3f107d5e-75d2-4e55-9611-471d94eca0f1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.1074016} device-1 | {"level":"info","message":"GET /devices/40a63c09-b001-4472-a5ef-fba954669c6c? 200 20ms","method":"GET","requestID":"01cc5570-782b-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/40a63c09-b001-4472-a5ef-fba954669c6c?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c"},"level":"info","message":"Building connection plan","requestID":"dfa0ddf6ad8dad6aa6d662848ef5d318"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"ba759686-8b29-4ac9-a5ff-a2149c8dceb2"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"72b3d560-395f-432a-8fb1-8a7e4a4a1a5b"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"047d7ea3-0e9d-462e-9164-444ea8e99c4c"}]},"level":"info","message":"Built pairwise service configurations","requestID":"dfa0ddf6ad8dad6aa6d662848ef5d318"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"72917ce8dceab713300728c324ad9526","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"dfa0ddf6ad8dad6aa6d662848ef5d318"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"01cfd7e0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"72917ce8dceab713300728c324ad9526"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1146,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:58Z"} gateway-1 | {"time_local":"21/Sep/2024:15:05:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/40a63c09-b001-4472-a5ef-fba954669c6c? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"72917ce8dceab713300728c324ad9526"} device-1 | {"level":"info","message":"GET /devices/40a63c09-b001-4472-a5ef-fba954669c6c? 200 15ms","method":"GET","requestID":"72917ce8dceab713300728c324ad9526","responseTime":15,"status":200,"url":"/devices/40a63c09-b001-4472-a5ef-fba954669c6c?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1146,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.807731,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"01cfd7e0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931157,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1N30.mShsGAWCvz-xzHzvG1mQU_jV03jICdbZtWJnkUNy4xA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"01cfd7e0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"7973b49e-0079-44f3-aa9a-e2d9c2a4a03d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.121126} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"79127f69-5a12-479c-b773-0cb4e97cb4a6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.121339} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"01cfd7e0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"01cfd7e0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"01cfd7e0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/a0831a6b-dce2-4ee4-98da-bd46cb71d139'","requestID":"01cfd7e0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/a0831a6b-dce2-4ee4-98da-bd46cb71d139'","requestID":"01cfd7e0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"01cfd7e0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 24ms","method":"POST","requestID":"01cfd7e0-782b-11ef-88d4-5fea3f61bb98","responseTime":24,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"01cfd7e0-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"dfa0ddf6ad8dad6aa6d662848ef5d318"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"01d751f0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1147,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"33235561-d57a-4ec9-9edf-d1652ef1913e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.1631958} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1147,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.731314,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"01d751f0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"01d751f0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"01d751f0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d/signaling 200 8ms","method":"POST","requestID":"01d751f0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"01d8d890-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1148,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40a63c09-b001-4472-a5ef-fba954669c6c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"07649ac7-0b32-4650-9d09-9fd686b0c826","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.1731195} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1148,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.306043,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"01d8d890-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"01d8d890-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"01d8d890-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/40a63c09-b001-4472-a5ef-fba954669c6c/signaling 200 7ms","method":"POST","requestID":"01d8d890-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/devices/40a63c09-b001-4472-a5ef-fba954669c6c/signaling"} device-1 | {"device":"5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"40a63c09-b001-4472-a5ef-fba954669c6c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"40a63c09-b001-4472-a5ef-fba954669c6c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 8597319991603141718 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:S9iJ\r\na=ice-pwd:YqtALa0H6WkuJcjT5sUczPWx\r\na=ice-options:trickle\r\na=fingerprint:sha-256 80:8D:8D:1B:DA:31:A8:78:73:66:99:64:62:2B:2C:C4:A5:53:F0:2C:87:08:D5:D0:1E:78:E5:FC:1B:45:D8:6A\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 5852932051237270034 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:Elsd\r\na=ice-pwd:vSq3IWgIX1/jSlIcYYkBjO/D\r\na=ice-options:trickle\r\na=fingerprint:sha-256 7B:F7:8C:AC:87:B4:08:AD:05:F9:F4:37:CD:9B:11:9C:21:2D:F2:D7:D4:E9:E5:BE:EC:B4:AC:E2:55:A7:37:4F\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"40a63c09-b001-4472-a5ef-fba954669c6c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3776631904 1 udp 2113937151 cee98951-4acf-43d7-ac04-bdc8ec995c98.local 42243 typ host generation 0 ufrag Elsd network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"40a63c09-b001-4472-a5ef-fba954669c6c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1698151967 1 udp 1677729535 141.24.211.56 42243 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag Elsd network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"40a63c09-b001-4472-a5ef-fba954669c6c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c'"} device-1 | {"content":{"candidate":"candidate:394045465 1 udp 2113937151 fbc57c95-029b-49ea-a9f7-c7f91a6cc461.local 56606 typ host generation 0 ufrag S9iJ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2220296458 1 udp 1677729535 141.24.211.56 56606 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag S9iJ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d'"} device-1 | {"device":"5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a0831a6b-dce2-4ee4-98da-bd46cb71d139' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a0831a6b-dce2-4ee4-98da-bd46cb71d139","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"62441f41ca19aac3acb5eb91d3246f3f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"62441f41ca19aac3acb5eb91d3246f3f","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"40a63c09-b001-4472-a5ef-fba954669c6c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"40a63c09-b001-4472-a5ef-fba954669c6c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/a0831a6b-dce2-4ee4-98da-bd46cb71d139"}}},"level":"info","message":"received a callback","requestID":"62441f41ca19aac3acb5eb91d3246f3f"} device-1 | {"device":"40a63c09-b001-4472-a5ef-fba954669c6c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"62441f41ca19aac3acb5eb91d3246f3f","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"62441f41ca19aac3acb5eb91d3246f3f"} device-1 | {"device":"40a63c09-b001-4472-a5ef-fba954669c6c","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"a0831a6b-dce2-4ee4-98da-bd46cb71d139","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"a0831a6b-dce2-4ee4-98da-bd46cb71d139","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a0831a6b-dce2-4ee4-98da-bd46cb71d139' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a0831a6b-dce2-4ee4-98da-bd46cb71d139","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4bdcdf5093025142089c26d5270eba46","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4bdcdf5093025142089c26d5270eba46","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/a0831a6b-dce2-4ee4-98da-bd46cb71d139"}}},"level":"info","message":"received a callback","requestID":"4bdcdf5093025142089c26d5270eba46"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"01e582c0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1149,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa0831a6b-dce2-4ee4-98da-bd46cb71d139","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6975569c-7a46-4140-b315-ef2a681fcec5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.2559793} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1149,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.097379,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a0831a6b-dce2-4ee4-98da-bd46cb71d139","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"01e582c0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/a0831a6b-dce2-4ee4-98da-bd46cb71d139","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"01e582c0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"01e582c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/a0831a6b-dce2-4ee4-98da-bd46cb71d139 200 7ms","method":"GET","requestID":"01e582c0-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/peerconnections/a0831a6b-dce2-4ee4-98da-bd46cb71d139"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 29ms","method":"POST","requestID":"4bdcdf5093025142089c26d5270eba46","responseTime":29,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"4bdcdf5093025142089c26d5270eba46"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"01e97a60-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1150,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40a63c09-b001-4472-a5ef-fba954669c6c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"221abdf0-78ec-4267-86a8-4ac23da8ddfc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.2825537} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1150,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.035889,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"01e97a60-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"01e97a60-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"01e97a60-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/40a63c09-b001-4472-a5ef-fba954669c6c/signaling 200 8ms","method":"POST","requestID":"01e97a60-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/40a63c09-b001-4472-a5ef-fba954669c6c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"01eb0100-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1151,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9d725de9-2dc4-40bf-87a0-c32b6932d5a0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.2915661} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1151,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.025414,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"01eb0100-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"01eb0100-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"01eb0100-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d/signaling 200 7ms","method":"POST","requestID":"01eb0100-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1OH0.EnnV8sXG_Yub9_c36QVrfdATvt4EDCON4HFMrdK0j_E","level":"info","message":"auth send jwt","requestID":"eae232d4928f4f7a62a282451e67a451"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"eae232d4928f4f7a62a282451e67a451","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c","requestID":"eae232d4928f4f7a62a282451e67a451"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1152,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1152,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.675656,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"eae232d4928f4f7a62a282451e67a451","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931158,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1OH0.EnnV8sXG_Yub9_c36QVrfdATvt4EDCON4HFMrdK0j_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"eae232d4928f4f7a62a282451e67a451","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c","requestID":"eae232d4928f4f7a62a282451e67a451"} gateway-1 | {"time_local":"21/Sep/2024:15:05:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c HTTP/1.1","status": "200","body_bytes_sent":"1285","request_time":"0.010","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"eae232d4928f4f7a62a282451e67a451"} experiment-1 | {"level":"info","message":"GET /experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c 200 8ms","method":"GET","requestID":"eae232d4928f4f7a62a282451e67a451","responseTime":8,"status":200,"url":"/experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1OH0.EnnV8sXG_Yub9_c36QVrfdATvt4EDCON4HFMrdK0j_E","level":"info","message":"auth send jwt","requestID":"6c531a01272f2e2ddf207a63cfa16be6"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6c531a01272f2e2ddf207a63cfa16be6","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c","requestID":"6c531a01272f2e2ddf207a63cfa16be6"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1153,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1153,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.664713,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"6c531a01272f2e2ddf207a63cfa16be6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931158,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1OH0.EnnV8sXG_Yub9_c36QVrfdATvt4EDCON4HFMrdK0j_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6c531a01272f2e2ddf207a63cfa16be6","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c"},"level":"info","message":"Attempting to finish experiment","requestID":"6c531a01272f2e2ddf207a63cfa16be6"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"01f44fd0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1154,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1154,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.732577,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a0831a6b-dce2-4ee4-98da-bd46cb71d139","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"01f44fd0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/a0831a6b-dce2-4ee4-98da-bd46cb71d139","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931158,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1OH0.EnnV8sXG_Yub9_c36QVrfdATvt4EDCON4HFMrdK0j_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"01f44fd0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/a0831a6b-dce2-4ee4-98da-bd46cb71d139","device":"5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/a0831a6b-dce2-4ee4-98da-bd46cb71d139","device":"40a63c09-b001-4472-a5ef-fba954669c6c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a0831a6b-dce2-4ee4-98da-bd46cb71d139' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/a0831a6b-dce2-4ee4-98da-bd46cb71d139' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a0831a6b-dce2-4ee4-98da-bd46cb71d139","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa0831a6b-dce2-4ee4-98da-bd46cb71d139': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa0831a6b-dce2-4ee4-98da-bd46cb71d139","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"7849a8ed-5c5b-487c-bacb-7f73457465ab","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.3677416} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8f117556-2793-4694-b07c-a7a77cd344ea","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.3680916} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2dc5ed85a1ce610fc0e1ed7c2cbb0efc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2dc5ed85a1ce610fc0e1ed7c2cbb0efc","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"01f44fd0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"02405bc33c1896dca56d7ecfa1d4376c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a0831a6b-dce2-4ee4-98da-bd46cb71d139"}}},"level":"info","message":"received a callback","requestID":"2dc5ed85a1ce610fc0e1ed7c2cbb0efc"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"02405bc33c1896dca56d7ecfa1d4376c","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a0831a6b-dce2-4ee4-98da-bd46cb71d139"}}},"level":"info","message":"received a callback","requestID":"02405bc33c1896dca56d7ecfa1d4376c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"01f44fd0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/a0831a6b-dce2-4ee4-98da-bd46cb71d139 204 38ms","method":"DELETE","requestID":"01f44fd0-782b-11ef-88d4-5fea3f61bb98","responseTime":38,"status":204,"url":"/peerconnections/a0831a6b-dce2-4ee4-98da-bd46cb71d139"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c"},"level":"info","message":"Successfully finished experiment","requestID":"6c531a01272f2e2ddf207a63cfa16be6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"01fd5080-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1155,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40a63c09-b001-4472-a5ef-fba954669c6c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"78b13f66-0bdd-4796-adc9-c1e378cfd7e0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.414605} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1155,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.514575,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"01fd5080-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"01fd5080-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff9ec52fc-e0f9-4458-a222-ac0ea00ff10c': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff9ec52fc-e0f9-4458-a222-ac0ea00ff10c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"e708847f-e86f-4baf-b963-f1cb665cdb12","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.4200742} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"01fd5080-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/40a63c09-b001-4472-a5ef-fba954669c6c/signaling 200 12ms","method":"POST","requestID":"01fd5080-782b-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/40a63c09-b001-4472-a5ef-fba954669c6c/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"76a92b14-4147-4937-95a9-245d2b11cb6d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.4204063} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"6c531a01272f2e2ddf207a63cfa16be6","responseTime":15,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"01ff9a70-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1156,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e83ce2ac-f488-4404-8e59-a645f6474b58","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.4271524} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1156,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.082757,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"01ff9a70-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"01ff9a70-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"01ff9a70-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d/signaling 200 8ms","method":"POST","requestID":"01ff9a70-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c","requestID":"6c531a01272f2e2ddf207a63cfa16be6"} gateway-1 | {"time_local":"21/Sep/2024:15:05:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.153","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6c531a01272f2e2ddf207a63cfa16be6"} experiment-1 | {"level":"info","message":"DELETE /experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c 204 150ms","method":"DELETE","requestID":"6c531a01272f2e2ddf207a63cfa16be6","responseTime":150,"status":204,"url":"/experiments/f9ec52fc-e0f9-4458-a222-ac0ea00ff10c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"2dc5ed85a1ce610fc0e1ed7c2cbb0efc","responseTime":123,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"2dc5ed85a1ce610fc0e1ed7c2cbb0efc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"02405bc33c1896dca56d7ecfa1d4376c","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:05:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.127","http_referrer":"","http_user_agent":"node-fetch","requestID":"02405bc33c1896dca56d7ecfa1d4376c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1OH0.EnnV8sXG_Yub9_c36QVrfdATvt4EDCON4HFMrdK0j_E","level":"info","message":"auth send jwt","requestID":"a5d96d4082287725aefef9a8eee6b721"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a5d96d4082287725aefef9a8eee6b721","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a5d96d4082287725aefef9a8eee6b721"} gateway-1 | {"time_local":"21/Sep/2024:15:05:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3282","request_time":"0.720","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"596b24f0efd8b228e9f9413508a91fc5"} gateway-1 | {"time_local":"21/Sep/2024:15:05:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3279","request_time":"0.752","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"72405eb29af5bc1d75aaf470f1bb254a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1157,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1157,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.954869,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a5d96d4082287725aefef9a8eee6b721","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931158,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1OH0.EnnV8sXG_Yub9_c36QVrfdATvt4EDCON4HFMrdK0j_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a5d96d4082287725aefef9a8eee6b721","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/5b5d7e5d-a2e1-4cbd-be82-2349401ef25d' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/40a63c09-b001-4472-a5ef-fba954669c6c' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbddefc4-45d6-420d-904e-42ad34b5f259","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"25708ef3-e992-4dae-8be7-c1bb918e648c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.5199072} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a5d96d4082287725aefef9a8eee6b721","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9da3d321-5c63-4b4e-9ddb-f2a08db27076","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.5244095} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"a5d96d4082287725aefef9a8eee6b721","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbddefc4-45d6-420d-904e-42ad34b5f259","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"42c2e4c6-b624-4b26-9225-84cabbac2662","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.533983} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"04fab226-1a93-46cc-b474-a3ccfd3d0781","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.5340497} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"a5d96d4082287725aefef9a8eee6b721","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbddefc4-45d6-420d-904e-42ad34b5f259","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbddefc4-45d6-420d-904e-42ad34b5f259","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:58.533946969Z"}]},"request_id":"b467b7e4-cf36-4f4f-8f1b-8c3f718dcae3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.5373852} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a5d96d4082287725aefef9a8eee6b721","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a5d96d4082287725aefef9a8eee6b721"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"a5d96d4082287725aefef9a8eee6b721","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:05:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a5d96d4082287725aefef9a8eee6b721"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1OH0.EnnV8sXG_Yub9_c36QVrfdATvt4EDCON4HFMrdK0j_E","level":"info","message":"auth send jwt","requestID":"8652bd0f61e19e1f95f6a2f5f797b737"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8652bd0f61e19e1f95f6a2f5f797b737","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8652bd0f61e19e1f95f6a2f5f797b737"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1158,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1158,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.711818,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:05:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"8652bd0f61e19e1f95f6a2f5f797b737","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931158,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE1OH0.EnnV8sXG_Yub9_c36QVrfdATvt4EDCON4HFMrdK0j_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8652bd0f61e19e1f95f6a2f5f797b737","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6cce1b2a-37c1-4b96-a08c-0ba21542d11a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"bc961fa4-ad40-4a14-8edf-e3ae4b816029","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.5576687} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"8652bd0f61e19e1f95f6a2f5f797b737","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fcfbe090-c6f7-4b2a-9dd8-78a595da7e93","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.561496} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"8652bd0f61e19e1f95f6a2f5f797b737","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6cce1b2a-37c1-4b96-a08c-0ba21542d11a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"29d5753b-1379-4279-b5b5-f4275d0715ad","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.5770574} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b82abd0b-409d-4597-a609-fb2d9ec62529","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.5773056} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"8652bd0f61e19e1f95f6a2f5f797b737","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6cce1b2a-37c1-4b96-a08c-0ba21542d11a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6cce1b2a-37c1-4b96-a08c-0ba21542d11a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:58.577031950Z"}]},"request_id":"04eb1680-c3b5-4bac-9d5c-e58ec85d31fb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931158.5804875} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"8652bd0f61e19e1f95f6a2f5f797b737","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8652bd0f61e19e1f95f6a2f5f797b737"} gateway-1 | {"time_local":"21/Sep/2024:15:05:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.042","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8652bd0f61e19e1f95f6a2f5f797b737"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"8652bd0f61e19e1f95f6a2f5f797b737","responseTime":39,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ffacc46ade3364a267f0c3e08537f1d4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ffacc46ade3364a267f0c3e08537f1d4","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/bbddefc4-45d6-420d-904e-42ad34b5f259/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ffacc46ade3364a267f0c3e08537f1d4"} device-1 | {"level":"info","message":"OPTIONS /devices/bbddefc4-45d6-420d-904e-42ad34b5f259/websocket 200 1ms","method":"OPTIONS","requestID":"ffacc46ade3364a267f0c3e08537f1d4","responseTime":1,"status":200,"url":"/devices/bbddefc4-45d6-420d-904e-42ad34b5f259/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MH0.i9mYgJXK7xUjiVmBoAlHLBAWe-usaOI4RyZ6vIZOY7w","level":"info","message":"auth send jwt","requestID":"320201c5b155ce2109e758a493037668"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"320201c5b155ce2109e758a493037668","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"320201c5b155ce2109e758a493037668"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1159,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1159,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.307919,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"320201c5b155ce2109e758a493037668","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931160,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MH0.i9mYgJXK7xUjiVmBoAlHLBAWe-usaOI4RyZ6vIZOY7w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"320201c5b155ce2109e758a493037668","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bb14a7d51da43d48371f89dde7448a54","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"bb14a7d51da43d48371f89dde7448a54","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"bb14a7d51da43d48371f89dde7448a54"} device-1 | {"level":"info","message":"OPTIONS /devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a/websocket 200 1ms","method":"OPTIONS","requestID":"bb14a7d51da43d48371f89dde7448a54","responseTime":1,"status":200,"url":"/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"320201c5b155ce2109e758a493037668"} gateway-1 | {"time_local":"21/Sep/2024:15:06:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/bbddefc4-45d6-420d-904e-42ad34b5f259/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"320201c5b155ce2109e758a493037668"} device-1 | {"level":"info","message":"POST /devices/bbddefc4-45d6-420d-904e-42ad34b5f259/websocket 200 23ms","method":"POST","requestID":"320201c5b155ce2109e758a493037668","responseTime":23,"status":200,"url":"/devices/bbddefc4-45d6-420d-904e-42ad34b5f259/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MH0.i9mYgJXK7xUjiVmBoAlHLBAWe-usaOI4RyZ6vIZOY7w","level":"info","message":"auth send jwt","requestID":"770e1afe86af78f194a8e52221818145"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"770e1afe86af78f194a8e52221818145","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"770e1afe86af78f194a8e52221818145"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1160,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1160,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.140668,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"770e1afe86af78f194a8e52221818145","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931160,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MH0.i9mYgJXK7xUjiVmBoAlHLBAWe-usaOI4RyZ6vIZOY7w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"770e1afe86af78f194a8e52221818145","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"770e1afe86af78f194a8e52221818145"} gateway-1 | {"time_local":"21/Sep/2024:15:06:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.034","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"770e1afe86af78f194a8e52221818145"} device-1 | {"level":"info","message":"POST /devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a/websocket 200 28ms","method":"POST","requestID":"770e1afe86af78f194a8e52221818145","responseTime":28,"status":200,"url":"/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"afc2ced529c2344c676735aff32e0536","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"afc2ced529c2344c676735aff32e0536","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/bbddefc4-45d6-420d-904e-42ad34b5f259? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"afc2ced529c2344c676735aff32e0536"} device-1 | {"level":"info","message":"OPTIONS /devices/bbddefc4-45d6-420d-904e-42ad34b5f259? 200 2ms","method":"OPTIONS","requestID":"afc2ced529c2344c676735aff32e0536","responseTime":2,"status":200,"url":"/devices/bbddefc4-45d6-420d-904e-42ad34b5f259?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MH0.i9mYgJXK7xUjiVmBoAlHLBAWe-usaOI4RyZ6vIZOY7w","level":"info","message":"auth send jwt","requestID":"b4315362d7b1157c8796d0ddb5c2d5ce"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b4315362d7b1157c8796d0ddb5c2d5ce","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b4315362d7b1157c8796d0ddb5c2d5ce"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a' connected"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1161,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1161,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.073074,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b4315362d7b1157c8796d0ddb5c2d5ce","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931160,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MH0.i9mYgJXK7xUjiVmBoAlHLBAWe-usaOI4RyZ6vIZOY7w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b4315362d7b1157c8796d0ddb5c2d5ce","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbddefc4-45d6-420d-904e-42ad34b5f259","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbddefc4-45d6-420d-904e-42ad34b5f259","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:58.533946969Z"}]},"request_id":"f9bb6ead-cf0d-48ea-a2cf-25e9bc959995","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931160.666816} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b4315362d7b1157c8796d0ddb5c2d5ce","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b4916a41-415c-47c2-86d4-ea84a49c70ee","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931160.6729772} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6db8cd2ad1f05447f9c989d5f844e4cd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6db8cd2ad1f05447f9c989d5f844e4cd","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"b4315362d7b1157c8796d0ddb5c2d5ce","responseTime":4,"status":200,"url":"/relations/update"} gateway-1 | {"time_local":"21/Sep/2024:15:06:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6db8cd2ad1f05447f9c989d5f844e4cd"} device-1 | {"level":"info","message":"OPTIONS /devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a? 200 1ms","method":"OPTIONS","requestID":"6db8cd2ad1f05447f9c989d5f844e4cd","responseTime":1,"status":200,"url":"/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MH0.i9mYgJXK7xUjiVmBoAlHLBAWe-usaOI4RyZ6vIZOY7w","level":"info","message":"auth send jwt","requestID":"228f39a31536ac02f774af2a9953799b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"228f39a31536ac02f774af2a9953799b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"228f39a31536ac02f774af2a9953799b"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1162,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1162,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.896878,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"228f39a31536ac02f774af2a9953799b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931160,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MH0.i9mYgJXK7xUjiVmBoAlHLBAWe-usaOI4RyZ6vIZOY7w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"228f39a31536ac02f774af2a9953799b","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbddefc4-45d6-420d-904e-42ad34b5f259","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbddefc4-45d6-420d-904e-42ad34b5f259","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:58.533946969Z"}]},"request_id":"9af7dcd7-6c8f-4425-a939-b7cda423b5ee","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931160.6902106} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b4315362d7b1157c8796d0ddb5c2d5ce","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b4315362d7b1157c8796d0ddb5c2d5ce"} device-1 | {"level":"info","message":"PATCH /devices/bbddefc4-45d6-420d-904e-42ad34b5f259? 200 41ms","method":"PATCH","requestID":"b4315362d7b1157c8796d0ddb5c2d5ce","responseTime":41,"status":200,"url":"/devices/bbddefc4-45d6-420d-904e-42ad34b5f259?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/bbddefc4-45d6-420d-904e-42ad34b5f259? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.046","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b4315362d7b1157c8796d0ddb5c2d5ce"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6cce1b2a-37c1-4b96-a08c-0ba21542d11a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6cce1b2a-37c1-4b96-a08c-0ba21542d11a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:58.577031950Z"}]},"request_id":"6f249a17-0a33-4aa6-bffe-70697103ae38","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931160.7007053} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"228f39a31536ac02f774af2a9953799b","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1c3e2f13-9112-4916-bb83-1657befb0c3e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931160.707238} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"228f39a31536ac02f774af2a9953799b","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6cce1b2a-37c1-4b96-a08c-0ba21542d11a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6cce1b2a-37c1-4b96-a08c-0ba21542d11a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:58.577031950Z"}]},"request_id":"4ba9e50b-b852-435a-bb3c-c785f5e41707","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931160.7188838} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"228f39a31536ac02f774af2a9953799b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"228f39a31536ac02f774af2a9953799b"} gateway-1 | {"time_local":"21/Sep/2024:15:06:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.043","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"228f39a31536ac02f774af2a9953799b"} device-1 | {"level":"info","message":"PATCH /devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a? 200 37ms","method":"PATCH","requestID":"228f39a31536ac02f774af2a9953799b","responseTime":37,"status":200,"url":"/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MH0.i9mYgJXK7xUjiVmBoAlHLBAWe-usaOI4RyZ6vIZOY7w","level":"info","message":"auth send jwt","requestID":"d508d192b193b6dd3db3d9fad67ad739"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d508d192b193b6dd3db3d9fad67ad739","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d508d192b193b6dd3db3d9fad67ad739"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1163,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1163,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.304407,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d508d192b193b6dd3db3d9fad67ad739","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931160,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MH0.i9mYgJXK7xUjiVmBoAlHLBAWe-usaOI4RyZ6vIZOY7w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d508d192b193b6dd3db3d9fad67ad739","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbddefc4-45d6-420d-904e-42ad34b5f259","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbddefc4-45d6-420d-904e-42ad34b5f259","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:58.533946969Z"}]},"request_id":"b367895e-898d-4ced-8136-b4b62c3e6ddb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931160.7473829} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d508d192b193b6dd3db3d9fad67ad739","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d508d192b193b6dd3db3d9fad67ad739"} gateway-1 | {"time_local":"21/Sep/2024:15:06:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bbddefc4-45d6-420d-904e-42ad34b5f259? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d508d192b193b6dd3db3d9fad67ad739"} device-1 | {"level":"info","message":"GET /devices/bbddefc4-45d6-420d-904e-42ad34b5f259? 200 17ms","method":"GET","requestID":"d508d192b193b6dd3db3d9fad67ad739","responseTime":17,"status":200,"url":"/devices/bbddefc4-45d6-420d-904e-42ad34b5f259?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MH0.i9mYgJXK7xUjiVmBoAlHLBAWe-usaOI4RyZ6vIZOY7w","level":"info","message":"auth send jwt","requestID":"6a6df7f7ecf189ef317eb4f5aa8e2491"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6a6df7f7ecf189ef317eb4f5aa8e2491","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6a6df7f7ecf189ef317eb4f5aa8e2491"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1164,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1164,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.443419,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"6a6df7f7ecf189ef317eb4f5aa8e2491","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931160,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MH0.i9mYgJXK7xUjiVmBoAlHLBAWe-usaOI4RyZ6vIZOY7w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6a6df7f7ecf189ef317eb4f5aa8e2491","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6cce1b2a-37c1-4b96-a08c-0ba21542d11a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6cce1b2a-37c1-4b96-a08c-0ba21542d11a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:58.577031950Z"}]},"request_id":"a9c1cad0-c815-4379-a930-a5ce8be20e74","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931160.7713237} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6a6df7f7ecf189ef317eb4f5aa8e2491","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6a6df7f7ecf189ef317eb4f5aa8e2491"} gateway-1 | {"time_local":"21/Sep/2024:15:06:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6a6df7f7ecf189ef317eb4f5aa8e2491"} device-1 | {"level":"info","message":"GET /devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a? 200 16ms","method":"GET","requestID":"6a6df7f7ecf189ef317eb4f5aa8e2491","responseTime":16,"status":200,"url":"/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MH0.i9mYgJXK7xUjiVmBoAlHLBAWe-usaOI4RyZ6vIZOY7w","level":"info","message":"auth send jwt","requestID":"153547ae1651dbddae5e83b9e3c00191"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"153547ae1651dbddae5e83b9e3c00191","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"153547ae1651dbddae5e83b9e3c00191"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1165,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1165,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.330105,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"153547ae1651dbddae5e83b9e3c00191","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931160,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MH0.i9mYgJXK7xUjiVmBoAlHLBAWe-usaOI4RyZ6vIZOY7w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"153547ae1651dbddae5e83b9e3c00191","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8"},"level":"info","message":"Attempting to run experiment","requestID":"153547ae1651dbddae5e83b9e3c00191"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8"},"level":"info","message":"Attempting to book experiment","requestID":"153547ae1651dbddae5e83b9e3c00191"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8"},"level":"info","message":"Successfully booked experiment","requestID":"153547ae1651dbddae5e83b9e3c00191"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"036e1e90-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"036e45a0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1166,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1166,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.595052,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1167,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"036e1e90-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931160,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MH0.i9mYgJXK7xUjiVmBoAlHLBAWe-usaOI4RyZ6vIZOY7w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"036e1e90-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1167,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.333223,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"036e45a0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931160,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MH0.i9mYgJXK7xUjiVmBoAlHLBAWe-usaOI4RyZ6vIZOY7w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"036e45a0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbddefc4-45d6-420d-904e-42ad34b5f259","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbddefc4-45d6-420d-904e-42ad34b5f259","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:58.533946969Z"}]},"request_id":"e4288ce5-260c-4f30-9b57-fac5c62cd0de","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931160.8330934} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"036e1e90-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6cce1b2a-37c1-4b96-a08c-0ba21542d11a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6cce1b2a-37c1-4b96-a08c-0ba21542d11a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:58.577031950Z"}]},"request_id":"946ccc16-68ca-44ea-bb06-781d62bd32a2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931160.8337107} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"036e45a0-782b-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"036e1e90-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/bbddefc4-45d6-420d-904e-42ad34b5f259? 200 14ms","method":"GET","requestID":"036e1e90-782b-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/bbddefc4-45d6-420d-904e-42ad34b5f259?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"036e45a0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a? 200 15ms","method":"GET","requestID":"036e45a0-782b-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8"},"level":"info","message":"Setting up experiment","requestID":"153547ae1651dbddae5e83b9e3c00191"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"153547ae1651dbddae5e83b9e3c00191"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8"},"level":"info","message":"Successfully locked booking for experiment","requestID":"153547ae1651dbddae5e83b9e3c00191"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"153547ae1651dbddae5e83b9e3c00191"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"153547ae1651dbddae5e83b9e3c00191"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8"},"level":"info","message":"Attempting to update booking for experiment","requestID":"153547ae1651dbddae5e83b9e3c00191"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8"},"level":"info","message":"Successfully updated booking for experiment","requestID":"153547ae1651dbddae5e83b9e3c00191"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8"},"level":"info","message":"Successfully set up experiment","requestID":"153547ae1651dbddae5e83b9e3c00191"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"03779470-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0377e290-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"037809a0-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8"},"level":"info","message":"Successfully running experiment","requestID":"153547ae1651dbddae5e83b9e3c00191"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1168,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1168,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.107982,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1169,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"03779470-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931160,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MH0.i9mYgJXK7xUjiVmBoAlHLBAWe-usaOI4RyZ6vIZOY7w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"03779470-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1169,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.873156,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"client_addr":"127.0.0.1:59846","level":"info","msg":"Received request.","req_id":1170,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0377e290-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931160,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MH0.i9mYgJXK7xUjiVmBoAlHLBAWe-usaOI4RyZ6vIZOY7w"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0377e290-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59846","level":"info","msg":"Sent response.","req_id":1170,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.539506,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbddefc4-45d6-420d-904e-42ad34b5f259","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b1159c7a-0fd6-4b97-8e2c-4876075e0f6a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931160.8949792} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"037809a0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"037809a0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbddefc4-45d6-420d-904e-42ad34b5f259","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbddefc4-45d6-420d-904e-42ad34b5f259","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:58.533946969Z"}]},"request_id":"f45604f8-70bd-43c4-828f-ff2c1b380f7a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931160.8980951} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"03779470-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"037809a0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6cce1b2a-37c1-4b96-a08c-0ba21542d11a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6cce1b2a-37c1-4b96-a08c-0ba21542d11a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:58.577031950Z"}]},"request_id":"8b301392-6685-4df0-9b59-b79c1b597ae6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931160.9000094} device-1 | {"level":"info","message":"POST /devices/bbddefc4-45d6-420d-904e-42ad34b5f259/signaling 200 10ms","method":"POST","requestID":"037809a0-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/bbddefc4-45d6-420d-904e-42ad34b5f259/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0377e290-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"037a7aa0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"03779470-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/bbddefc4-45d6-420d-904e-42ad34b5f259? 200 22ms","method":"GET","requestID":"03779470-782b-11ef-88d4-5fea3f61bb98","responseTime":22,"status":200,"url":"/devices/bbddefc4-45d6-420d-904e-42ad34b5f259?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0377e290-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a? 200 21ms","method":"GET","requestID":"0377e290-782b-11ef-88d4-5fea3f61bb98","responseTime":21,"status":200,"url":"/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1171,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F88e8cc8f-f64a-4b64-bfd7-a09da1c250b8#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F88e8cc8f-f64a-4b64-bfd7-a09da1c250b8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"9393da0d-7eb5-4533-96c4-b043628ac86a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931160.912342} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"037b8c10-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6cce1b2a-37c1-4b96-a08c-0ba21542d11a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f93bf328-ae2b-43c1-9071-25a07e1f9731","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931160.9139173} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3467375f-20e1-4c13-87d5-dfbfb4620c7e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931160.9141512} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1171,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.440614,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"037a7aa0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"037a7aa0-782b-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"153547ae1651dbddae5e83b9e3c00191","responseTime":26,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbddefc4-45d6-420d-904e-42ad34b5f259","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4d1ca423-52f4-47a2-a4d9-3159b28bbf7a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931160.9198582} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1172,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1172,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.825267,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"037b8c10-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"037a7aa0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"037b8c10-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a/signaling 200 16ms","method":"POST","requestID":"037a7aa0-782b-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"153547ae1651dbddae5e83b9e3c00191"} gateway-1 | {"time_local":"21/Sep/2024:15:06:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1212","request_time":"0.149","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"153547ae1651dbddae5e83b9e3c00191"} experiment-1 | {"level":"info","message":"POST /experiments? 201 143ms","method":"POST","requestID":"153547ae1651dbddae5e83b9e3c00191","responseTime":143,"status":201,"url":"/experiments?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MH0.i9mYgJXK7xUjiVmBoAlHLBAWe-usaOI4RyZ6vIZOY7w","level":"info","message":"auth send jwt","requestID":"e20ed15e1cb9269a703599b45623b94d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e20ed15e1cb9269a703599b45623b94d","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e20ed15e1cb9269a703599b45623b94d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"037b8c10-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/bbddefc4-45d6-420d-904e-42ad34b5f259/signaling 200 21ms","method":"POST","requestID":"037b8c10-782b-11ef-88d4-5fea3f61bb98","responseTime":21,"status":200,"url":"/devices/bbddefc4-45d6-420d-904e-42ad34b5f259/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1173,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1173,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.743699,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:00Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"037f3590-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e20ed15e1cb9269a703599b45623b94d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931160,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MH0.i9mYgJXK7xUjiVmBoAlHLBAWe-usaOI4RyZ6vIZOY7w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e20ed15e1cb9269a703599b45623b94d","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1174,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbddefc4-45d6-420d-904e-42ad34b5f259","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbddefc4-45d6-420d-904e-42ad34b5f259","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:58.533946969Z"}]},"request_id":"6f4cf251-2b7a-42fd-b888-2b74e35c0251","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931160.9409838} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6cce1b2a-37c1-4b96-a08c-0ba21542d11a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b3974bac-fc84-4ebb-9186-bc827ebab85b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931160.941102} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e20ed15e1cb9269a703599b45623b94d","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1174,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.3763,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"037f3590-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"037f3590-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e20ed15e1cb9269a703599b45623b94d"} gateway-1 | {"time_local":"21/Sep/2024:15:06:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bbddefc4-45d6-420d-904e-42ad34b5f259? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e20ed15e1cb9269a703599b45623b94d"} device-1 | {"level":"info","message":"GET /devices/bbddefc4-45d6-420d-904e-42ad34b5f259? 200 12ms","method":"GET","requestID":"e20ed15e1cb9269a703599b45623b94d","responseTime":12,"status":200,"url":"/devices/bbddefc4-45d6-420d-904e-42ad34b5f259?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"037f3590-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a/signaling 200 9ms","method":"POST","requestID":"037f3590-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"153547ae1651dbddae5e83b9e3c00191"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0380e340-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"03810a50-782b-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MH0.i9mYgJXK7xUjiVmBoAlHLBAWe-usaOI4RyZ6vIZOY7w","level":"info","message":"auth send jwt","requestID":"f9ca63a00fcf377cc1a613cb319e1c29"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f9ca63a00fcf377cc1a613cb319e1c29","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f9ca63a00fcf377cc1a613cb319e1c29"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1175,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1175,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.899553,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1176,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0380e340-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931160,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MH0.i9mYgJXK7xUjiVmBoAlHLBAWe-usaOI4RyZ6vIZOY7w"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0380e340-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1176,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.534439,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"client_addr":"127.0.0.1:59846","level":"info","msg":"Received request.","req_id":1177,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"client_addr":"127.0.0.1:59846","level":"info","msg":"Sent response.","req_id":1177,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.692431,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"03810a50-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931160,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MH0.i9mYgJXK7xUjiVmBoAlHLBAWe-usaOI4RyZ6vIZOY7w"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"03810a50-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f9ca63a00fcf377cc1a613cb319e1c29","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931160,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MH0.i9mYgJXK7xUjiVmBoAlHLBAWe-usaOI4RyZ6vIZOY7w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f9ca63a00fcf377cc1a613cb319e1c29","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbddefc4-45d6-420d-904e-42ad34b5f259","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbddefc4-45d6-420d-904e-42ad34b5f259","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:58.533946969Z"}]},"request_id":"c08eed7c-6125-42df-a382-58569ad0d5cc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931160.9586885} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6cce1b2a-37c1-4b96-a08c-0ba21542d11a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6cce1b2a-37c1-4b96-a08c-0ba21542d11a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:58.577031950Z"}]},"request_id":"456eff00-608d-4b5a-aa2f-d987f65a7e92","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931160.959213} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0380e340-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6cce1b2a-37c1-4b96-a08c-0ba21542d11a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6cce1b2a-37c1-4b96-a08c-0ba21542d11a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:05:58.577031950Z"}]},"request_id":"b7fb65c0-f77b-487a-846c-b69d5fc6e39b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931160.9599597} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"03810a50-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f9ca63a00fcf377cc1a613cb319e1c29","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0380e340-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/bbddefc4-45d6-420d-904e-42ad34b5f259? 200 16ms","method":"GET","requestID":"0380e340-782b-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/bbddefc4-45d6-420d-904e-42ad34b5f259?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"03810a50-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a? 200 16ms","method":"GET","requestID":"03810a50-782b-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f9ca63a00fcf377cc1a613cb319e1c29"} device-1 | {"level":"info","message":"GET /devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a? 200 15ms","method":"GET","requestID":"f9ca63a00fcf377cc1a613cb319e1c29","responseTime":15,"status":200,"url":"/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f9ca63a00fcf377cc1a613cb319e1c29"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8"},"level":"info","message":"Building connection plan","requestID":"153547ae1651dbddae5e83b9e3c00191"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"77a60124-23c3-4fd1-abe3-8c88ce9196d4"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"4b956e19-033f-4ae6-9263-a82e5a4486ea"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"609fc550-c955-411d-ab22-d4bb3e685e72"}]},"level":"info","message":"Built pairwise service configurations","requestID":"153547ae1651dbddae5e83b9e3c00191"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"153547ae1651dbddae5e83b9e3c00191"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"0383c970-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1178,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1178,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.31692,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0383c970-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931160,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MH0.i9mYgJXK7xUjiVmBoAlHLBAWe-usaOI4RyZ6vIZOY7w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0383c970-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"ed6f8c80-0771-4df6-abb2-6a3366b825ab","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931160.9778523} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a144bd7f-37cc-439b-87df-74ad7e8ca89e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931160.9780595} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"0383c970-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"0383c970-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"0383c970-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/0107a260-d9f1-40eb-ba6c-644534b90917'","requestID":"0383c970-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/0107a260-d9f1-40eb-ba6c-644534b90917'","requestID":"0383c970-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"0383c970-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 23ms","method":"POST","requestID":"0383c970-782b-11ef-88d4-5fea3f61bb98","responseTime":23,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"0383c970-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"153547ae1651dbddae5e83b9e3c00191"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"038b91a0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1179,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:01Z"} device-1 | {"device":"bbddefc4-45d6-420d-904e-42ad34b5f259","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"bbddefc4-45d6-420d-904e-42ad34b5f259","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbddefc4-45d6-420d-904e-42ad34b5f259","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1fb45036-360e-494d-8295-864c989ae7a1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931161.022976} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1179,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.287295,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"038b91a0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"038b91a0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"038b91a0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/bbddefc4-45d6-420d-904e-42ad34b5f259/signaling 200 9ms","method":"POST","requestID":"038b91a0-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/bbddefc4-45d6-420d-904e-42ad34b5f259/signaling"} device-1 | {"device":"6cce1b2a-37c1-4b96-a08c-0ba21542d11a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"6cce1b2a-37c1-4b96-a08c-0ba21542d11a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"038d3f50-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1180,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:01Z"} device-1 | {"content":{"sdp":"v=0\r\no=- 1197472019784330294 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:AXmJ\r\na=ice-pwd:rJitzXn1GcJtUv26FAwXK+ZY\r\na=ice-options:trickle\r\na=fingerprint:sha-256 D6:94:83:17:33:FF:7E:91:F4:00:06:05:82:D8:06:4C:CD:81:3F:B5:A4:56:2A:64:BA:B5:DA:D8:87:39:13:40\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"6cce1b2a-37c1-4b96-a08c-0ba21542d11a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6cce1b2a-37c1-4b96-a08c-0ba21542d11a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dc623ee8-f382-4ffc-b55b-4de0d50d23e6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931161.0345132} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1180,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.711532,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"038d3f50-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"038d3f50-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"content":{"sdp":"v=0\r\no=- 5854807821462043418 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:i2SN\r\na=ice-pwd:L3gKAk/FhnnOjAU7nBne+nmy\r\na=ice-options:trickle\r\na=fingerprint:sha-256 07:06:D6:C0:FA:5A:B3:45:FE:11:9D:3C:FF:FB:33:24:C3:7C:19:F0:3B:11:A7:EA:8E:6B:CB:3D:9D:FE:13:FA\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"bbddefc4-45d6-420d-904e-42ad34b5f259","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"038d3f50-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a/signaling 200 15ms","method":"POST","requestID":"038d3f50-782b-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a/signaling"} device-1 | {"content":{"candidate":"candidate:2507572970 1 udp 2113937151 19f10994-ec05-4a5b-b9da-8cdd8be84766.local 39381 typ host generation 0 ufrag i2SN network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"bbddefc4-45d6-420d-904e-42ad34b5f259","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259'"} device-1 | {"content":{"candidate":"candidate:106768377 1 udp 1677729535 141.24.211.56 39381 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag i2SN network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"bbddefc4-45d6-420d-904e-42ad34b5f259","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259'"} device-1 | {"content":{"candidate":"candidate:2370332433 1 udp 2113937151 b5d5ce2d-ef2b-4eb0-964c-f52d85d3f5cc.local 45416 typ host generation 0 ufrag AXmJ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6cce1b2a-37c1-4b96-a08c-0ba21542d11a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:157617518 1 udp 1677729535 141.24.211.56 45416 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag AXmJ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6cce1b2a-37c1-4b96-a08c-0ba21542d11a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a'"} device-1 | {"device":"6cce1b2a-37c1-4b96-a08c-0ba21542d11a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/0107a260-d9f1-40eb-ba6c-644534b90917' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0107a260-d9f1-40eb-ba6c-644534b90917","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"bbddefc4-45d6-420d-904e-42ad34b5f259","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a8373d3e1f1f6d7ab664f5f60918de24","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} device-1 | {"device":"6cce1b2a-37c1-4b96-a08c-0ba21542d11a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a8373d3e1f1f6d7ab664f5f60918de24","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/0107a260-d9f1-40eb-ba6c-644534b90917"}}},"level":"info","message":"received a callback","requestID":"a8373d3e1f1f6d7ab664f5f60918de24"} device-1 | {"device":"bbddefc4-45d6-420d-904e-42ad34b5f259","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"6cce1b2a-37c1-4b96-a08c-0ba21542d11a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 4ms","method":"POST","requestID":"a8373d3e1f1f6d7ab664f5f60918de24","responseTime":4,"status":200,"url":"/callbacks/experiment"} device-1 | {"device":"bbddefc4-45d6-420d-904e-42ad34b5f259","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} gateway-1 | {"time_local":"21/Sep/2024:15:06:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"a8373d3e1f1f6d7ab664f5f60918de24"} device-1 | {"device":"bbddefc4-45d6-420d-904e-42ad34b5f259","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"0107a260-d9f1-40eb-ba6c-644534b90917","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"0107a260-d9f1-40eb-ba6c-644534b90917","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/0107a260-d9f1-40eb-ba6c-644534b90917' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0107a260-d9f1-40eb-ba6c-644534b90917","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"86672492eaf003e6bee9626a9f632d98","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"86672492eaf003e6bee9626a9f632d98","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/0107a260-d9f1-40eb-ba6c-644534b90917"}}},"level":"info","message":"received a callback","requestID":"86672492eaf003e6bee9626a9f632d98"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"0397edb0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1181,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:01Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0107a260-d9f1-40eb-ba6c-644534b90917","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b247986a-0919-4535-b1db-8a258ed9cf4e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931161.103684} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1181,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.355747,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0107a260-d9f1-40eb-ba6c-644534b90917","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0397edb0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/0107a260-d9f1-40eb-ba6c-644534b90917","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0397edb0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"0397edb0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/0107a260-d9f1-40eb-ba6c-644534b90917 200 8ms","method":"GET","requestID":"0397edb0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/peerconnections/0107a260-d9f1-40eb-ba6c-644534b90917"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 24ms","method":"POST","requestID":"86672492eaf003e6bee9626a9f632d98","responseTime":24,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch","requestID":"86672492eaf003e6bee9626a9f632d98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"039b2200-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1182,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:01Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbddefc4-45d6-420d-904e-42ad34b5f259","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a7afb8d5-0486-4059-bc49-2579daaf7d7b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931161.1246178} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1182,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.227083,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"039b2200-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"039b2200-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"039b2200-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/bbddefc4-45d6-420d-904e-42ad34b5f259/signaling 200 8ms","method":"POST","requestID":"039b2200-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/bbddefc4-45d6-420d-904e-42ad34b5f259/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"039ca8a0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1183,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:01Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6cce1b2a-37c1-4b96-a08c-0ba21542d11a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bfaa89cf-c5d8-4d7f-9733-18dab9ccae66","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931161.1341774} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1183,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.279257,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"039ca8a0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"039ca8a0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"039ca8a0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a/signaling 200 7ms","method":"POST","requestID":"039ca8a0-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MX0.mMnib5PVmnWDVC__ZT3-gBXscgkrpCxlKYWswAEil_w","level":"info","message":"auth send jwt","requestID":"2e767654d26e59ba4ceb985cc1622dd4"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2e767654d26e59ba4ceb985cc1622dd4","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8","requestID":"2e767654d26e59ba4ceb985cc1622dd4"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1184,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:01Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1184,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.868878,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"2e767654d26e59ba4ceb985cc1622dd4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931161,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MX0.mMnib5PVmnWDVC__ZT3-gBXscgkrpCxlKYWswAEil_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2e767654d26e59ba4ceb985cc1622dd4","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8","requestID":"2e767654d26e59ba4ceb985cc1622dd4"} gateway-1 | {"time_local":"21/Sep/2024:15:06:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8 HTTP/1.1","status": "200","body_bytes_sent":"1285","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2e767654d26e59ba4ceb985cc1622dd4"} experiment-1 | {"level":"info","message":"GET /experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8 200 10ms","method":"GET","requestID":"2e767654d26e59ba4ceb985cc1622dd4","responseTime":10,"status":200,"url":"/experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MX0.mMnib5PVmnWDVC__ZT3-gBXscgkrpCxlKYWswAEil_w","level":"info","message":"auth send jwt","requestID":"b49145e7bfb59353b447569220e3a078"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b49145e7bfb59353b447569220e3a078","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8","requestID":"b49145e7bfb59353b447569220e3a078"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1185,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:01Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1185,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.667685,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:01Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b49145e7bfb59353b447569220e3a078","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931161,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MX0.mMnib5PVmnWDVC__ZT3-gBXscgkrpCxlKYWswAEil_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"b49145e7bfb59353b447569220e3a078","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8"},"level":"info","message":"Attempting to finish experiment","requestID":"b49145e7bfb59353b447569220e3a078"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"03a7f340-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1186,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:01Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1186,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.706832,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:01Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0107a260-d9f1-40eb-ba6c-644534b90917","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"03a7f340-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/0107a260-d9f1-40eb-ba6c-644534b90917","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931161,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MX0.mMnib5PVmnWDVC__ZT3-gBXscgkrpCxlKYWswAEil_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"03a7f340-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/0107a260-d9f1-40eb-ba6c-644534b90917","device":"bbddefc4-45d6-420d-904e-42ad34b5f259","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/0107a260-d9f1-40eb-ba6c-644534b90917","device":"6cce1b2a-37c1-4b96-a08c-0ba21542d11a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/0107a260-d9f1-40eb-ba6c-644534b90917' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/0107a260-d9f1-40eb-ba6c-644534b90917' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0107a260-d9f1-40eb-ba6c-644534b90917","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0107a260-d9f1-40eb-ba6c-644534b90917': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0107a260-d9f1-40eb-ba6c-644534b90917","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"6da3486d-6a77-40c1-870b-083625fc690e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931161.2199032} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f3572261-4617-41b3-8699-f4ca91be8c4d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931161.2200315} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"03a7f340-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5989f537dd5eb7a666b805122fac49a8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5989f537dd5eb7a666b805122fac49a8","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"58e31c47065169595d8b104c79ddfb1c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"58e31c47065169595d8b104c79ddfb1c","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/0107a260-d9f1-40eb-ba6c-644534b90917"}}},"level":"info","message":"received a callback","requestID":"5989f537dd5eb7a666b805122fac49a8"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/0107a260-d9f1-40eb-ba6c-644534b90917"}}},"level":"info","message":"received a callback","requestID":"58e31c47065169595d8b104c79ddfb1c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"03a7f340-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/0107a260-d9f1-40eb-ba6c-644534b90917 204 33ms","method":"DELETE","requestID":"03a7f340-782b-11ef-88d4-5fea3f61bb98","responseTime":33,"status":204,"url":"/peerconnections/0107a260-d9f1-40eb-ba6c-644534b90917"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8"},"level":"info","message":"Successfully finished experiment","requestID":"b49145e7bfb59353b447569220e3a078"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"03af9460-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1187,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:01Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbddefc4-45d6-420d-904e-42ad34b5f259","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eb4e75ef-f1c2-4fff-b284-215f675876f8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931161.2578063} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1187,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.8447,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"03af9460-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"03af9460-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"03af9460-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/bbddefc4-45d6-420d-904e-42ad34b5f259/signaling 200 9ms","method":"POST","requestID":"03af9460-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/bbddefc4-45d6-420d-904e-42ad34b5f259/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"03b14210-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F88e8cc8f-f64a-4b64-bfd7-a09da1c250b8': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F88e8cc8f-f64a-4b64-bfd7-a09da1c250b8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"fdc2a04b-941e-48fb-902a-5f61ffe5ee13","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931161.26643} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c31b4404-2ed1-4da8-9c55-b2cd17b8c5ae","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931161.2667992} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"b49145e7bfb59353b447569220e3a078","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1188,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:01Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6cce1b2a-37c1-4b96-a08c-0ba21542d11a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9e228808-480f-493d-a66d-fc73375ddb0c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931161.2702837} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1188,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.307379,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"03b14210-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"03b14210-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"03b14210-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a/signaling 200 10ms","method":"POST","requestID":"03b14210-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8","requestID":"b49145e7bfb59353b447569220e3a078"} gateway-1 | {"time_local":"21/Sep/2024:15:06:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.135","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b49145e7bfb59353b447569220e3a078"} experiment-1 | {"level":"info","message":"DELETE /experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8 204 131ms","method":"DELETE","requestID":"b49145e7bfb59353b447569220e3a078","responseTime":131,"status":204,"url":"/experiments/88e8cc8f-f64a-4b64-bfd7-a09da1c250b8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 105ms","method":"POST","requestID":"5989f537dd5eb7a666b805122fac49a8","responseTime":105,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.108","http_referrer":"","http_user_agent":"node-fetch","requestID":"5989f537dd5eb7a666b805122fac49a8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 105ms","method":"POST","requestID":"58e31c47065169595d8b104c79ddfb1c","responseTime":105,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.109","http_referrer":"","http_user_agent":"node-fetch","requestID":"58e31c47065169595d8b104c79ddfb1c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MX0.mMnib5PVmnWDVC__ZT3-gBXscgkrpCxlKYWswAEil_w","level":"info","message":"auth send jwt","requestID":"7e4f8f51ff4ce803f5f747462cb58b2d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7e4f8f51ff4ce803f5f747462cb58b2d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7e4f8f51ff4ce803f5f747462cb58b2d"} gateway-1 | {"time_local":"21/Sep/2024:15:06:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3281","request_time":"0.730","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"31b3826e551d35a7c20b63144c77d895"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1189,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:01Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1189,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.794491,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"7e4f8f51ff4ce803f5f747462cb58b2d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931161,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MX0.mMnib5PVmnWDVC__ZT3-gBXscgkrpCxlKYWswAEil_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7e4f8f51ff4ce803f5f747462cb58b2d","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:06:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3279","request_time":"0.699","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c8d21e48c388d171a427b1aacc2d1490"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/bbddefc4-45d6-420d-904e-42ad34b5f259' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F220cab30-27ba-470a-ba9a-efa311f0c437","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"82a45865-3849-4cad-962f-f0dfbdd60ffc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931161.3583398} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7e4f8f51ff4ce803f5f747462cb58b2d","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5634efcc-fbde-4d52-9213-4e0ab227605b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931161.363041} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"7e4f8f51ff4ce803f5f747462cb58b2d","responseTime":3,"status":200,"url":"/relations/update"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/6cce1b2a-37c1-4b96-a08c-0ba21542d11a' closed"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F220cab30-27ba-470a-ba9a-efa311f0c437","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"c0e8db68-f953-4427-b526-f73203de71c2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931161.3743346} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d68f3143-be48-4a77-bd56-2c118a7f7037","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931161.3744853} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"7e4f8f51ff4ce803f5f747462cb58b2d","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F220cab30-27ba-470a-ba9a-efa311f0c437","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F220cab30-27ba-470a-ba9a-efa311f0c437","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:01.374306827Z"}]},"request_id":"2a37233e-4a17-4fa3-bfee-e7c899abe0c3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931161.3787692} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7e4f8f51ff4ce803f5f747462cb58b2d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7e4f8f51ff4ce803f5f747462cb58b2d"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"7e4f8f51ff4ce803f5f747462cb58b2d","responseTime":48,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7e4f8f51ff4ce803f5f747462cb58b2d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MX0.mMnib5PVmnWDVC__ZT3-gBXscgkrpCxlKYWswAEil_w","level":"info","message":"auth send jwt","requestID":"dcbfdd2fd032ee61568e3c8f5583b9d5"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"dcbfdd2fd032ee61568e3c8f5583b9d5","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"dcbfdd2fd032ee61568e3c8f5583b9d5"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1190,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:01Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1190,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.735039,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dcbfdd2fd032ee61568e3c8f5583b9d5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931161,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MX0.mMnib5PVmnWDVC__ZT3-gBXscgkrpCxlKYWswAEil_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"dcbfdd2fd032ee61568e3c8f5583b9d5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e3c2ace-5aab-460f-9486-9e6bc1e00858","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"05024932-f7c3-4dd2-9ce7-d69bbe6e0aa7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931161.4029734} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dcbfdd2fd032ee61568e3c8f5583b9d5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2f774ac8-60cf-481d-a66d-4ba5dd6d5ba4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931161.4072948} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"dcbfdd2fd032ee61568e3c8f5583b9d5","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e3c2ace-5aab-460f-9486-9e6bc1e00858","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"58482d4a-c7db-4480-bed7-bfd136cc5340","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931161.4264917} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eb0bd342-f904-4c63-adec-f49862684cc1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931161.426766} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"dcbfdd2fd032ee61568e3c8f5583b9d5","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e3c2ace-5aab-460f-9486-9e6bc1e00858","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e3c2ace-5aab-460f-9486-9e6bc1e00858","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:01.426456831Z"}]},"request_id":"c8a7291d-29e4-4ebe-b4f2-d14bd651a4ee","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931161.432017} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"dcbfdd2fd032ee61568e3c8f5583b9d5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"dcbfdd2fd032ee61568e3c8f5583b9d5"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"dcbfdd2fd032ee61568e3c8f5583b9d5","responseTime":48,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dcbfdd2fd032ee61568e3c8f5583b9d5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MX0.mMnib5PVmnWDVC__ZT3-gBXscgkrpCxlKYWswAEil_w","level":"info","message":"auth send jwt","requestID":"2e162ee55314db9ef01d7f6cd342fe3f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2e162ee55314db9ef01d7f6cd342fe3f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"2e162ee55314db9ef01d7f6cd342fe3f"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1191,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:01Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1191,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.231133,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:01Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"2e162ee55314db9ef01d7f6cd342fe3f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931161,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MX0.mMnib5PVmnWDVC__ZT3-gBXscgkrpCxlKYWswAEil_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2e162ee55314db9ef01d7f6cd342fe3f","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e3c2ace-5aab-460f-9486-9e6bc1e00858","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e3c2ace-5aab-460f-9486-9e6bc1e00858","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:01.426456831Z"}]},"request_id":"1e2f54dc-cc12-433a-912d-a18c39067740","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931161.9207373} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2e162ee55314db9ef01d7f6cd342fe3f","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7553cbef-b84e-4d60-9cd0-e94b472129f9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931161.927842} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"2e162ee55314db9ef01d7f6cd342fe3f","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e3c2ace-5aab-460f-9486-9e6bc1e00858","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e3c2ace-5aab-460f-9486-9e6bc1e00858","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:01.426456831Z"}]},"request_id":"31a9322c-d9b3-42fb-b7d0-9c38cd4482e4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931161.9392986} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2e162ee55314db9ef01d7f6cd342fe3f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"2e162ee55314db9ef01d7f6cd342fe3f"} device-1 | {"level":"info","message":"PATCH /devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858 200 34ms","method":"PATCH","requestID":"2e162ee55314db9ef01d7f6cd342fe3f","responseTime":34,"status":200,"url":"/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858"} gateway-1 | {"time_local":"21/Sep/2024:15:06:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"2e162ee55314db9ef01d7f6cd342fe3f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MX0.mMnib5PVmnWDVC__ZT3-gBXscgkrpCxlKYWswAEil_w","level":"info","message":"auth send jwt","requestID":"b084c167d7cf15ea63e17f905c9fc662"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b084c167d7cf15ea63e17f905c9fc662","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b084c167d7cf15ea63e17f905c9fc662"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1192,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:01Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1192,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.174283,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:01Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b084c167d7cf15ea63e17f905c9fc662","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931161,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2MX0.mMnib5PVmnWDVC__ZT3-gBXscgkrpCxlKYWswAEil_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b084c167d7cf15ea63e17f905c9fc662","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b084c167d7cf15ea63e17f905c9fc662"} gateway-1 | {"time_local":"21/Sep/2024:15:06:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b084c167d7cf15ea63e17f905c9fc662"} device-1 | {"level":"info","message":"POST /devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858/websocket 200 18ms","method":"POST","requestID":"b084c167d7cf15ea63e17f905c9fc662","responseTime":18,"status":200,"url":"/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d03321df9d486dd9b11560f9c324cb51","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d03321df9d486dd9b11560f9c324cb51","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/220cab30-27ba-470a-ba9a-efa311f0c437/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d03321df9d486dd9b11560f9c324cb51"} device-1 | {"level":"info","message":"OPTIONS /devices/220cab30-27ba-470a-ba9a-efa311f0c437/websocket 200 1ms","method":"OPTIONS","requestID":"d03321df9d486dd9b11560f9c324cb51","responseTime":1,"status":200,"url":"/devices/220cab30-27ba-470a-ba9a-efa311f0c437/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2M30.hcU852RMfqbgySDJFjog_uUkwEIQ9szo7IpftqgkEmg","level":"info","message":"auth send jwt","requestID":"c6deba3b502eb09f82916ec41252fef5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c6deba3b502eb09f82916ec41252fef5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c6deba3b502eb09f82916ec41252fef5"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1193,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1193,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.348398,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c6deba3b502eb09f82916ec41252fef5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931163,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2M30.hcU852RMfqbgySDJFjog_uUkwEIQ9szo7IpftqgkEmg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c6deba3b502eb09f82916ec41252fef5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c6deba3b502eb09f82916ec41252fef5"} gateway-1 | {"time_local":"21/Sep/2024:15:06:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/220cab30-27ba-470a-ba9a-efa311f0c437/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c6deba3b502eb09f82916ec41252fef5"} device-1 | {"level":"info","message":"POST /devices/220cab30-27ba-470a-ba9a-efa311f0c437/websocket 200 22ms","method":"POST","requestID":"c6deba3b502eb09f82916ec41252fef5","responseTime":22,"status":200,"url":"/devices/220cab30-27ba-470a-ba9a-efa311f0c437/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"908d8cd104d99ce19dbd259b19735bbd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"908d8cd104d99ce19dbd259b19735bbd","responseTime":0,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/220cab30-27ba-470a-ba9a-efa311f0c437? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"908d8cd104d99ce19dbd259b19735bbd"} device-1 | {"level":"info","message":"OPTIONS /devices/220cab30-27ba-470a-ba9a-efa311f0c437? 200 1ms","method":"OPTIONS","requestID":"908d8cd104d99ce19dbd259b19735bbd","responseTime":1,"status":200,"url":"/devices/220cab30-27ba-470a-ba9a-efa311f0c437?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2M30.hcU852RMfqbgySDJFjog_uUkwEIQ9szo7IpftqgkEmg","level":"info","message":"auth send jwt","requestID":"5548e9a0348245f5e467c533640f20b8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5548e9a0348245f5e467c533640f20b8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5548e9a0348245f5e467c533640f20b8"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1194,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1194,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.241224,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"5548e9a0348245f5e467c533640f20b8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931163,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2M30.hcU852RMfqbgySDJFjog_uUkwEIQ9szo7IpftqgkEmg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5548e9a0348245f5e467c533640f20b8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F220cab30-27ba-470a-ba9a-efa311f0c437","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F220cab30-27ba-470a-ba9a-efa311f0c437","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:01.374306827Z"}]},"request_id":"4215471f-f161-4fe6-a415-c1b72fba55e8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931163.5148966} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5548e9a0348245f5e467c533640f20b8","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bafaf11d-d4d5-445f-8952-edf4feb7a445","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931163.5214052} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"5548e9a0348245f5e467c533640f20b8","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F220cab30-27ba-470a-ba9a-efa311f0c437","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F220cab30-27ba-470a-ba9a-efa311f0c437","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:01.374306827Z"}]},"request_id":"5664269c-3016-420d-824f-4898a44e632b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931163.533939} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5548e9a0348245f5e467c533640f20b8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5548e9a0348245f5e467c533640f20b8"} gateway-1 | {"time_local":"21/Sep/2024:15:06:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/220cab30-27ba-470a-ba9a-efa311f0c437? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.039","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5548e9a0348245f5e467c533640f20b8"} device-1 | {"level":"info","message":"PATCH /devices/220cab30-27ba-470a-ba9a-efa311f0c437? 200 35ms","method":"PATCH","requestID":"5548e9a0348245f5e467c533640f20b8","responseTime":35,"status":200,"url":"/devices/220cab30-27ba-470a-ba9a-efa311f0c437?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2M30.hcU852RMfqbgySDJFjog_uUkwEIQ9szo7IpftqgkEmg","level":"info","message":"auth send jwt","requestID":"eed76be7f01bbdf7267b2ffab7a89978"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"eed76be7f01bbdf7267b2ffab7a89978","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"eed76be7f01bbdf7267b2ffab7a89978"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1195,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1195,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.226646,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"eed76be7f01bbdf7267b2ffab7a89978","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931163,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2M30.hcU852RMfqbgySDJFjog_uUkwEIQ9szo7IpftqgkEmg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"eed76be7f01bbdf7267b2ffab7a89978","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F220cab30-27ba-470a-ba9a-efa311f0c437","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F220cab30-27ba-470a-ba9a-efa311f0c437","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:01.374306827Z"}]},"request_id":"f46c22f4-e9a8-44f8-acd6-431d236f98d1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931163.5550396} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"eed76be7f01bbdf7267b2ffab7a89978","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"eed76be7f01bbdf7267b2ffab7a89978"} device-1 | {"level":"info","message":"GET /devices/220cab30-27ba-470a-ba9a-efa311f0c437? 200 12ms","method":"GET","requestID":"eed76be7f01bbdf7267b2ffab7a89978","responseTime":12,"status":200,"url":"/devices/220cab30-27ba-470a-ba9a-efa311f0c437?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/220cab30-27ba-470a-ba9a-efa311f0c437? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"eed76be7f01bbdf7267b2ffab7a89978"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2M30.hcU852RMfqbgySDJFjog_uUkwEIQ9szo7IpftqgkEmg","level":"info","message":"auth send jwt","requestID":"93725f37267accc58db9251be53b90b4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"93725f37267accc58db9251be53b90b4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"93725f37267accc58db9251be53b90b4"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1196,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1196,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.319281,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"93725f37267accc58db9251be53b90b4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931163,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2M30.hcU852RMfqbgySDJFjog_uUkwEIQ9szo7IpftqgkEmg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"93725f37267accc58db9251be53b90b4","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e3c2ace-5aab-460f-9486-9e6bc1e00858","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e3c2ace-5aab-460f-9486-9e6bc1e00858","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:01.426456831Z"}]},"request_id":"0eb9e2ff-4f1a-49a9-96bc-352d4b8a02b0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931163.5731604} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"93725f37267accc58db9251be53b90b4","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"93725f37267accc58db9251be53b90b4"} gateway-1 | {"time_local":"21/Sep/2024:15:06:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"93725f37267accc58db9251be53b90b4"} device-1 | {"level":"info","message":"GET /devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858? 200 15ms","method":"GET","requestID":"93725f37267accc58db9251be53b90b4","responseTime":15,"status":200,"url":"/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2M30.hcU852RMfqbgySDJFjog_uUkwEIQ9szo7IpftqgkEmg","level":"info","message":"auth send jwt","requestID":"a40ba45b0784de9c872aa80b5d23ee66"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a40ba45b0784de9c872aa80b5d23ee66","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"a40ba45b0784de9c872aa80b5d23ee66"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1197,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1197,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.164128,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a40ba45b0784de9c872aa80b5d23ee66","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931163,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2M30.hcU852RMfqbgySDJFjog_uUkwEIQ9szo7IpftqgkEmg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a40ba45b0784de9c872aa80b5d23ee66","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162"},"level":"info","message":"Attempting to run experiment","requestID":"a40ba45b0784de9c872aa80b5d23ee66"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162"},"level":"info","message":"Attempting to book experiment","requestID":"a40ba45b0784de9c872aa80b5d23ee66"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162"},"level":"info","message":"Successfully booked experiment","requestID":"a40ba45b0784de9c872aa80b5d23ee66"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0518e860-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"05193680-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1198,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1198,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.690803,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1199,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0518e860-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931163,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2M30.hcU852RMfqbgySDJFjog_uUkwEIQ9szo7IpftqgkEmg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0518e860-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1199,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.096584,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"05193680-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931163,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2M30.hcU852RMfqbgySDJFjog_uUkwEIQ9szo7IpftqgkEmg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"05193680-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F220cab30-27ba-470a-ba9a-efa311f0c437","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F220cab30-27ba-470a-ba9a-efa311f0c437","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:01.374306827Z"}]},"request_id":"9d24ed00-8391-4b96-8528-3f10baeb9bd4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931163.6324718} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0518e860-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e3c2ace-5aab-460f-9486-9e6bc1e00858","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e3c2ace-5aab-460f-9486-9e6bc1e00858","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:01.426456831Z"}]},"request_id":"f5102985-090b-4cc5-a429-2b6b29d2ffca","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931163.6330957} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"05193680-782b-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0518e860-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/220cab30-27ba-470a-ba9a-efa311f0c437? 200 14ms","method":"GET","requestID":"0518e860-782b-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/220cab30-27ba-470a-ba9a-efa311f0c437?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"05193680-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858? 200 13ms","method":"GET","requestID":"05193680-782b-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162"},"level":"info","message":"Setting up experiment","requestID":"a40ba45b0784de9c872aa80b5d23ee66"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"a40ba45b0784de9c872aa80b5d23ee66"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162"},"level":"info","message":"Successfully locked booking for experiment","requestID":"a40ba45b0784de9c872aa80b5d23ee66"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"a40ba45b0784de9c872aa80b5d23ee66"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"a40ba45b0784de9c872aa80b5d23ee66"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162"},"level":"info","message":"Attempting to update booking for experiment","requestID":"a40ba45b0784de9c872aa80b5d23ee66"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162"},"level":"info","message":"Successfully updated booking for experiment","requestID":"a40ba45b0784de9c872aa80b5d23ee66"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162"},"level":"info","message":"Successfully set up experiment","requestID":"a40ba45b0784de9c872aa80b5d23ee66"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"05206270-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0520b090-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0520d7a0-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162"},"level":"info","message":"Successfully running experiment","requestID":"a40ba45b0784de9c872aa80b5d23ee66"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1200,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1200,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.918945,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1201,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1201,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.707712,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"client_addr":"127.0.0.1:59846","level":"info","msg":"Received request.","req_id":1202,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"05206270-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931163,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2M30.hcU852RMfqbgySDJFjog_uUkwEIQ9szo7IpftqgkEmg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"05206270-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0520b090-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931163,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2M30.hcU852RMfqbgySDJFjog_uUkwEIQ9szo7IpftqgkEmg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0520b090-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59846","level":"info","msg":"Sent response.","req_id":1202,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.716884,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F220cab30-27ba-470a-ba9a-efa311f0c437","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"96284e44-cffe-4080-ad66-f1b0b814844b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931163.678735} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0520d7a0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"0520d7a0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F220cab30-27ba-470a-ba9a-efa311f0c437","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F220cab30-27ba-470a-ba9a-efa311f0c437","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:01.374306827Z"}]},"request_id":"a4532d18-425d-455c-8721-f5e6d2843fd7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931163.6836529} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"05206270-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0520d7a0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e3c2ace-5aab-460f-9486-9e6bc1e00858","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e3c2ace-5aab-460f-9486-9e6bc1e00858","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:01.426456831Z"}]},"request_id":"54dd582c-16c8-4f7b-98cb-ea282270da2e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931163.6865268} device-1 | {"level":"info","message":"POST /devices/220cab30-27ba-470a-ba9a-efa311f0c437/signaling 200 13ms","method":"POST","requestID":"0520d7a0-782b-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/220cab30-27ba-470a-ba9a-efa311f0c437/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0520b090-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"05232190-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"05206270-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1203,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:03Z"} device-1 | {"level":"info","message":"GET /devices/220cab30-27ba-470a-ba9a-efa311f0c437? 200 22ms","method":"GET","requestID":"05206270-782b-11ef-88d4-5fea3f61bb98","responseTime":22,"status":200,"url":"/devices/220cab30-27ba-470a-ba9a-efa311f0c437?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0520b090-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858? 200 20ms","method":"GET","requestID":"0520b090-782b-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"05240bf0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e3c2ace-5aab-460f-9486-9e6bc1e00858","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"960d5bf9-08d1-40ca-a26d-3896f8db4b59","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931163.6945772} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1203,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.773744,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"05232190-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"05232190-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb1f5cdb7-75d3-44bf-b53e-43722d1a8162#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb1f5cdb7-75d3-44bf-b53e-43722d1a8162","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"2afb7351-0bf4-447f-a60c-a35c5b47292a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931163.6972558} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b1ff2e8c-f17e-4b12-99f7-f9906935e913","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931163.6974385} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"05232190-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858/signaling 200 12ms","method":"POST","requestID":"05232190-782b-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"a40ba45b0784de9c872aa80b5d23ee66","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1204,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F220cab30-27ba-470a-ba9a-efa311f0c437","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2038a9b2-3273-4d1e-9907-5554bd6b9e7c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931163.7031515} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1204,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.989376,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"05240bf0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"05240bf0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"05240bf0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/220cab30-27ba-470a-ba9a-efa311f0c437/signaling 200 13ms","method":"POST","requestID":"05240bf0-782b-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/220cab30-27ba-470a-ba9a-efa311f0c437/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"a40ba45b0784de9c872aa80b5d23ee66"} experiment-1 | {"level":"info","message":"POST /experiments? 201 125ms","method":"POST","requestID":"a40ba45b0784de9c872aa80b5d23ee66","responseTime":125,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.130","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a40ba45b0784de9c872aa80b5d23ee66"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"05267cf0-782b-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2M30.hcU852RMfqbgySDJFjog_uUkwEIQ9szo7IpftqgkEmg","level":"info","message":"auth send jwt","requestID":"b696d52b23f12c17b09d84e672a49265"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b696d52b23f12c17b09d84e672a49265","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1205,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:03Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b696d52b23f12c17b09d84e672a49265"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e3c2ace-5aab-460f-9486-9e6bc1e00858","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"305c7590-47a9-44bd-b0ec-d26f8f50d179","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931163.7163181} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1206,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1205,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.387654,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"05267cf0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"05267cf0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1206,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.895734,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b696d52b23f12c17b09d84e672a49265","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931163,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2M30.hcU852RMfqbgySDJFjog_uUkwEIQ9szo7IpftqgkEmg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b696d52b23f12c17b09d84e672a49265","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"05267cf0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858/signaling 200 10ms","method":"POST","requestID":"05267cf0-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F220cab30-27ba-470a-ba9a-efa311f0c437","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F220cab30-27ba-470a-ba9a-efa311f0c437","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:01.374306827Z"}]},"request_id":"e7f98675-bd11-42a1-9aa8-36c53f954c9c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931163.7217662} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"a40ba45b0784de9c872aa80b5d23ee66"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b696d52b23f12c17b09d84e672a49265","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"052851b0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"052878c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b696d52b23f12c17b09d84e672a49265"} gateway-1 | {"time_local":"21/Sep/2024:15:06:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/220cab30-27ba-470a-ba9a-efa311f0c437? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b696d52b23f12c17b09d84e672a49265"} device-1 | {"level":"info","message":"GET /devices/220cab30-27ba-470a-ba9a-efa311f0c437? 200 12ms","method":"GET","requestID":"b696d52b23f12c17b09d84e672a49265","responseTime":12,"status":200,"url":"/devices/220cab30-27ba-470a-ba9a-efa311f0c437?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1207,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1207,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.985527,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Received request.","req_id":1208,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"052851b0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931163,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2M30.hcU852RMfqbgySDJFjog_uUkwEIQ9szo7IpftqgkEmg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"052851b0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59836","level":"info","msg":"Sent response.","req_id":1208,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.594876,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"052878c0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931163,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2M30.hcU852RMfqbgySDJFjog_uUkwEIQ9szo7IpftqgkEmg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"052878c0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2M30.hcU852RMfqbgySDJFjog_uUkwEIQ9szo7IpftqgkEmg","level":"info","message":"auth send jwt","requestID":"17ed05dca02fbe89cd966c20d0f02e59"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"17ed05dca02fbe89cd966c20d0f02e59","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"17ed05dca02fbe89cd966c20d0f02e59"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F220cab30-27ba-470a-ba9a-efa311f0c437","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F220cab30-27ba-470a-ba9a-efa311f0c437","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:01.374306827Z"}]},"request_id":"60ba4254-d7be-48b7-8a36-93d038153a64","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931163.731516} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"052851b0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e3c2ace-5aab-460f-9486-9e6bc1e00858","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e3c2ace-5aab-460f-9486-9e6bc1e00858","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:01.426456831Z"}]},"request_id":"73cb1d9d-0130-486d-9c3a-da92a62d71fc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931163.732707} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"052878c0-782b-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1209,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1209,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.058182,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:03Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"052851b0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"17ed05dca02fbe89cd966c20d0f02e59","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931163,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2M30.hcU852RMfqbgySDJFjog_uUkwEIQ9szo7IpftqgkEmg"} device-1 | {"level":"info","message":"GET /devices/220cab30-27ba-470a-ba9a-efa311f0c437? 200 13ms","method":"GET","requestID":"052851b0-782b-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/220cab30-27ba-470a-ba9a-efa311f0c437?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"052878c0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"17ed05dca02fbe89cd966c20d0f02e59","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858? 200 13ms","method":"GET","requestID":"052878c0-782b-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162"},"level":"info","message":"Building connection plan","requestID":"a40ba45b0784de9c872aa80b5d23ee66"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"575d3c6d-f7b3-4ba6-a373-0670f5d1e0db"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"460328a3-185a-4db4-ad0d-9785ff8861bc"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"b21696cd-08fa-46ac-a005-22ecf43f4514"}]},"level":"info","message":"Built pairwise service configurations","requestID":"a40ba45b0784de9c872aa80b5d23ee66"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"a40ba45b0784de9c872aa80b5d23ee66"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"052ac2b0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e3c2ace-5aab-460f-9486-9e6bc1e00858","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e3c2ace-5aab-460f-9486-9e6bc1e00858","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:01.426456831Z"}]},"request_id":"485108d8-9d89-40b6-9752-11e2e7fe7fa3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931163.7401369} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"17ed05dca02fbe89cd966c20d0f02e59","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1210,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1210,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.673768,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:03Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"17ed05dca02fbe89cd966c20d0f02e59"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"052ac2b0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931163,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2M30.hcU852RMfqbgySDJFjog_uUkwEIQ9szo7IpftqgkEmg"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"052ac2b0-782b-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:06:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"17ed05dca02fbe89cd966c20d0f02e59"} device-1 | {"level":"info","message":"GET /devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858? 200 12ms","method":"GET","requestID":"17ed05dca02fbe89cd966c20d0f02e59","responseTime":12,"status":200,"url":"/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"c16f55df-e9c1-4a72-9e6f-0aa5630630cc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931163.7514157} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"90265f5b-085b-4861-b7fe-e19aeba9af34","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931163.7518206} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"052ac2b0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"052ac2b0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"052ac2b0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/10ea7151-2574-4b96-aaa2-b33714e610ac'","requestID":"052ac2b0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/10ea7151-2574-4b96-aaa2-b33714e610ac'","requestID":"052ac2b0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"052ac2b0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 24ms","method":"POST","requestID":"052ac2b0-782b-11ef-88d4-5fea3f61bb98","responseTime":24,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"052ac2b0-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"a40ba45b0784de9c872aa80b5d23ee66"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"05328ae0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1211,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F220cab30-27ba-470a-ba9a-efa311f0c437","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"270feb94-0a60-445d-b5f5-8aa53b712922","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931163.7943454} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1211,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.518695,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"05328ae0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"05328ae0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"05328ae0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/220cab30-27ba-470a-ba9a-efa311f0c437/signaling 200 8ms","method":"POST","requestID":"05328ae0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/220cab30-27ba-470a-ba9a-efa311f0c437/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"05341180-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1212,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e3c2ace-5aab-460f-9486-9e6bc1e00858","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a1c30429-0cc2-4bbd-a5e2-e584e3a58fe7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931163.8040705} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1212,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.214578,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"05341180-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"05341180-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"05341180-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858/signaling 200 8ms","method":"POST","requestID":"05341180-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858/signaling"} device-1 | {"device":"220cab30-27ba-470a-ba9a-efa311f0c437","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"220cab30-27ba-470a-ba9a-efa311f0c437","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"3e3c2ace-5aab-460f-9486-9e6bc1e00858","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"10ea7151-2574-4b96-aaa2-b33714e610ac","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 7463494134496834173 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=msid-semantic: WMS\r\nm=application 9 DTLS/SCTP 5000\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:3Zra\r\na=ice-pwd:QbKFyroOZhup9jzyHaiDCsoL\r\na=ice-options:trickle\r\na=fingerprint:sha-256 D0:5D:11:C9:1F:0A:73:45:59:5A:EE:3E:88:23:F9:3C:17:CC:43:70:92:0A:ED:EA:7C:D0:CD:8B:75:34:BF:96\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"220cab30-27ba-470a-ba9a-efa311f0c437","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3391428776 1 udp 2113937151 2cb8d8d9-9882-4f0d-9ac6-09fb65a9a0c1.local 55731 typ host generation 0 ufrag 3Zra network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"220cab30-27ba-470a-ba9a-efa311f0c437","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"220cab30-27ba-470a-ba9a-efa311f0c437","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/10ea7151-2574-4b96-aaa2-b33714e610ac' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"10ea7151-2574-4b96-aaa2-b33714e610ac","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"3e3c2ace-5aab-460f-9486-9e6bc1e00858","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3e3c2ace-5aab-460f-9486-9e6bc1e00858","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3e3c2ace-5aab-460f-9486-9e6bc1e00858","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"862c67aaa41613b07b7372980c75dc00","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} device-1 | {"content":{"candidate":"candidate:1494137275 1 udp 1677729535 141.24.211.56 55731 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 3Zra network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"220cab30-27ba-470a-ba9a-efa311f0c437","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"862c67aaa41613b07b7372980c75dc00","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"220cab30-27ba-470a-ba9a-efa311f0c437","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/10ea7151-2574-4b96-aaa2-b33714e610ac"}}},"level":"info","message":"received a callback","requestID":"862c67aaa41613b07b7372980c75dc00"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437'"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 4ms","method":"POST","requestID":"862c67aaa41613b07b7372980c75dc00","responseTime":4,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"862c67aaa41613b07b7372980c75dc00"} device-1 | {"data":{"peerconnection":"10ea7151-2574-4b96-aaa2-b33714e610ac","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"3e3c2ace-5aab-460f-9486-9e6bc1e00858","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"220cab30-27ba-470a-ba9a-efa311f0c437","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"3e3c2ace-5aab-460f-9486-9e6bc1e00858","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"10ea7151-2574-4b96-aaa2-b33714e610ac","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"220cab30-27ba-470a-ba9a-efa311f0c437","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/10ea7151-2574-4b96-aaa2-b33714e610ac' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"10ea7151-2574-4b96-aaa2-b33714e610ac","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ca25b8f85a488ad24bcee79590d3414a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ca25b8f85a488ad24bcee79590d3414a","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/10ea7151-2574-4b96-aaa2-b33714e610ac"}}},"level":"info","message":"received a callback","requestID":"ca25b8f85a488ad24bcee79590d3414a"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"066e3f30-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1213,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:05Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F10ea7151-2574-4b96-aaa2-b33714e610ac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"438ee3e8-6ddf-479e-afcf-57a46cecde71","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931165.8641703} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1213,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.544277,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/10ea7151-2574-4b96-aaa2-b33714e610ac","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"066e3f30-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/10ea7151-2574-4b96-aaa2-b33714e610ac","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"066e3f30-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"066e3f30-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/10ea7151-2574-4b96-aaa2-b33714e610ac 200 8ms","method":"GET","requestID":"066e3f30-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/peerconnections/10ea7151-2574-4b96-aaa2-b33714e610ac"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 32ms","method":"POST","requestID":"ca25b8f85a488ad24bcee79590d3414a","responseTime":32,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.035","http_referrer":"","http_user_agent":"node-fetch","requestID":"ca25b8f85a488ad24bcee79590d3414a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0672ac00-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1214,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:05Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F220cab30-27ba-470a-ba9a-efa311f0c437","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"94c9ec0b-fdf6-4a71-9eb0-498b52439715","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931165.892959} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1214,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.599649,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0672ac00-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0672ac00-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0672ac00-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/220cab30-27ba-470a-ba9a-efa311f0c437/signaling 200 10ms","method":"POST","requestID":"0672ac00-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/220cab30-27ba-470a-ba9a-efa311f0c437/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"067480c0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1215,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:05Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e3c2ace-5aab-460f-9486-9e6bc1e00858","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f2162d7a-1117-4ab1-a2ef-55fdf6faaa93","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931165.9047658} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1215,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.331086,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"067480c0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"067480c0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"067480c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858/signaling 200 8ms","method":"POST","requestID":"067480c0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2NX0.5KM5ng3QLQdDGOrZDDNJftRKi3BKKhSZGj446cvMaAQ","level":"info","message":"auth send jwt","requestID":"b6db4f4ef5a96c429f691d6b7e48bc24"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b6db4f4ef5a96c429f691d6b7e48bc24","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162","requestID":"b6db4f4ef5a96c429f691d6b7e48bc24"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1216,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:05Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1216,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.344798,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b6db4f4ef5a96c429f691d6b7e48bc24","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931165,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2NX0.5KM5ng3QLQdDGOrZDDNJftRKi3BKKhSZGj446cvMaAQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b6db4f4ef5a96c429f691d6b7e48bc24","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162","requestID":"b6db4f4ef5a96c429f691d6b7e48bc24"} gateway-1 | {"time_local":"21/Sep/2024:15:06:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162 HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b6db4f4ef5a96c429f691d6b7e48bc24"} experiment-1 | {"level":"info","message":"GET /experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162 200 15ms","method":"GET","requestID":"b6db4f4ef5a96c429f691d6b7e48bc24","responseTime":15,"status":200,"url":"/experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2NX0.5KM5ng3QLQdDGOrZDDNJftRKi3BKKhSZGj446cvMaAQ","level":"info","message":"auth send jwt","requestID":"25475001fa98e5ebe882f95e58fd77b0"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"25475001fa98e5ebe882f95e58fd77b0","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162","requestID":"25475001fa98e5ebe882f95e58fd77b0"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1217,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:05Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1217,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.812476,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:05Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"25475001fa98e5ebe882f95e58fd77b0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931165,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2NX0.5KM5ng3QLQdDGOrZDDNJftRKi3BKKhSZGj446cvMaAQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"25475001fa98e5ebe882f95e58fd77b0","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162"},"level":"info","message":"Attempting to finish experiment","requestID":"25475001fa98e5ebe882f95e58fd77b0"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"06826370-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1218,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:05Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1218,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.468398,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:05Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/10ea7151-2574-4b96-aaa2-b33714e610ac","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"06826370-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/10ea7151-2574-4b96-aaa2-b33714e610ac","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931165,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2NX0.5KM5ng3QLQdDGOrZDDNJftRKi3BKKhSZGj446cvMaAQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"06826370-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/10ea7151-2574-4b96-aaa2-b33714e610ac","device":"220cab30-27ba-470a-ba9a-efa311f0c437","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"3e3c2ace-5aab-460f-9486-9e6bc1e00858","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3e3c2ace-5aab-460f-9486-9e6bc1e00858","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3e3c2ace-5aab-460f-9486-9e6bc1e00858","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/10ea7151-2574-4b96-aaa2-b33714e610ac' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/10ea7151-2574-4b96-aaa2-b33714e610ac' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"10ea7151-2574-4b96-aaa2-b33714e610ac","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F10ea7151-2574-4b96-aaa2-b33714e610ac': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F10ea7151-2574-4b96-aaa2-b33714e610ac","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"846e58f8-2998-4bd6-a86f-1e2406dfbde1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931166.0076544} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"66613765-18d3-4c06-927f-b7ae444643fa","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931166.0079129} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"06826370-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4fc6cc2ca35c0812fe6dcf05028e141e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4fc6cc2ca35c0812fe6dcf05028e141e","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d648ad73fa496e463c0e048f2a72ce53","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d648ad73fa496e463c0e048f2a72ce53","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/10ea7151-2574-4b96-aaa2-b33714e610ac"}}},"level":"info","message":"received a callback","requestID":"4fc6cc2ca35c0812fe6dcf05028e141e"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/10ea7151-2574-4b96-aaa2-b33714e610ac"}}},"level":"info","message":"received a callback","requestID":"d648ad73fa496e463c0e048f2a72ce53"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"06826370-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/10ea7151-2574-4b96-aaa2-b33714e610ac 204 35ms","method":"DELETE","requestID":"06826370-782b-11ef-88d4-5fea3f61bb98","responseTime":35,"status":204,"url":"/peerconnections/10ea7151-2574-4b96-aaa2-b33714e610ac"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162"},"level":"info","message":"Successfully finished experiment","requestID":"25475001fa98e5ebe882f95e58fd77b0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"068ac7e0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1219,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:06Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F220cab30-27ba-470a-ba9a-efa311f0c437","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4243131c-ed07-4d1a-b66a-60721d779509","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931166.052164} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1219,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.96285,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"068ac7e0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"068ac7e0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"068ac7e0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/220cab30-27ba-470a-ba9a-efa311f0c437/signaling 200 11ms","method":"POST","requestID":"068ac7e0-782b-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/220cab30-27ba-470a-ba9a-efa311f0c437/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"068ceac0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb1f5cdb7-75d3-44bf-b53e-43722d1a8162': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb1f5cdb7-75d3-44bf-b53e-43722d1a8162","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"bb05a118-aa65-4e38-be96-bbc61a4ffdcd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931166.0600803} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7b72c952-92df-4e2e-8475-8bec036b3a9f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931166.060404} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"25475001fa98e5ebe882f95e58fd77b0","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1220,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:06Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e3c2ace-5aab-460f-9486-9e6bc1e00858","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f8374c5e-65bf-47cf-b378-a11a39699873","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931166.0663729} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1220,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.877895,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"068ceac0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"068ceac0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"068ceac0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858/signaling 200 11ms","method":"POST","requestID":"068ceac0-782b-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162","requestID":"25475001fa98e5ebe882f95e58fd77b0"} gateway-1 | {"time_local":"21/Sep/2024:15:06:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.158","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"25475001fa98e5ebe882f95e58fd77b0"} experiment-1 | {"level":"info","message":"DELETE /experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162 204 152ms","method":"DELETE","requestID":"25475001fa98e5ebe882f95e58fd77b0","responseTime":152,"status":204,"url":"/experiments/b1f5cdb7-75d3-44bf-b53e-43722d1a8162"} gateway-1 | {"time_local":"21/Sep/2024:15:06:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3231","request_time":"4.163","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"0ed696c5332acdef092beb9a0bab4998"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"4fc6cc2ca35c0812fe6dcf05028e141e","responseTime":123,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.127","http_referrer":"","http_user_agent":"node-fetch","requestID":"4fc6cc2ca35c0812fe6dcf05028e141e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"d648ad73fa496e463c0e048f2a72ce53","responseTime":123,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.127","http_referrer":"","http_user_agent":"node-fetch","requestID":"d648ad73fa496e463c0e048f2a72ce53"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2Nn0.gkMhT4G6_IBfdff8PwOZs1RDSuzvWiYgARJKpNzxy2U","level":"info","message":"auth send jwt","requestID":"e1b51bd29151603ab0f77072d7c21dd3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e1b51bd29151603ab0f77072d7c21dd3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e1b51bd29151603ab0f77072d7c21dd3"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1221,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:06Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1221,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.796814,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:06Z"} gateway-1 | {"time_local":"21/Sep/2024:15:06:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3094","request_time":"2.675","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9aec82d15b601bff5c37dd564f71957e"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e1b51bd29151603ab0f77072d7c21dd3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931166,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2Nn0.gkMhT4G6_IBfdff8PwOZs1RDSuzvWiYgARJKpNzxy2U"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e1b51bd29151603ab0f77072d7c21dd3","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/3e3c2ace-5aab-460f-9486-9e6bc1e00858' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dddd803-00b3-440f-9677-a2de3ea6ac3e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"faefd4d9-74ea-4367-9ac7-e3242b0c28b6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931166.1588993} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e1b51bd29151603ab0f77072d7c21dd3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/220cab30-27ba-470a-ba9a-efa311f0c437' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8c5b5998-94fe-4e6a-ad39-959a9ce87b3f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931166.1636333} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"e1b51bd29151603ab0f77072d7c21dd3","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dddd803-00b3-440f-9677-a2de3ea6ac3e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"e4448128-e8dc-4e0e-b598-d0fb1fda2153","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931166.1796994} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bb61bbae-121c-478e-8895-6b5cb3007ba1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931166.1798542} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"e1b51bd29151603ab0f77072d7c21dd3","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dddd803-00b3-440f-9677-a2de3ea6ac3e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dddd803-00b3-440f-9677-a2de3ea6ac3e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:06.179662586Z"}]},"request_id":"4233a07b-81d9-483d-9fea-d32250af7f88","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931166.1839461} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e1b51bd29151603ab0f77072d7c21dd3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e1b51bd29151603ab0f77072d7c21dd3"} gateway-1 | {"time_local":"21/Sep/2024:15:06:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e1b51bd29151603ab0f77072d7c21dd3"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"e1b51bd29151603ab0f77072d7c21dd3","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2Nn0.gkMhT4G6_IBfdff8PwOZs1RDSuzvWiYgARJKpNzxy2U","level":"info","message":"auth send jwt","requestID":"6479dc9c121aa5b3e036346bda461ee4"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6479dc9c121aa5b3e036346bda461ee4","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6479dc9c121aa5b3e036346bda461ee4"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1222,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:06Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1222,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.694651,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"6479dc9c121aa5b3e036346bda461ee4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931166,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2Nn0.gkMhT4G6_IBfdff8PwOZs1RDSuzvWiYgARJKpNzxy2U"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6479dc9c121aa5b3e036346bda461ee4","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02c2d82d-913d-4f99-86f5-8a124594494b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"5e6a0f74-a546-41c8-bce6-65df303008dc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931166.2077339} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6479dc9c121aa5b3e036346bda461ee4","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8e76e2e9-4b7c-4b23-a66b-dc681ee6ccd4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931166.2129238} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"6479dc9c121aa5b3e036346bda461ee4","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02c2d82d-913d-4f99-86f5-8a124594494b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"11937305-aefd-47a8-81dc-4b3ba6ffa76b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931166.2240865} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4c8c07e2-3a43-43ca-8201-0f9bf28957b8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931166.2243905} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"6479dc9c121aa5b3e036346bda461ee4","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02c2d82d-913d-4f99-86f5-8a124594494b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02c2d82d-913d-4f99-86f5-8a124594494b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:06.224034573Z"}]},"request_id":"a814031a-f04b-47f8-b038-cac9b41393d7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931166.228609} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6479dc9c121aa5b3e036346bda461ee4","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6479dc9c121aa5b3e036346bda461ee4"} gateway-1 | {"time_local":"21/Sep/2024:15:06:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6479dc9c121aa5b3e036346bda461ee4"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"6479dc9c121aa5b3e036346bda461ee4","responseTime":39,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2Nn0.gkMhT4G6_IBfdff8PwOZs1RDSuzvWiYgARJKpNzxy2U","level":"info","message":"auth send jwt","requestID":"2eca6c97796cce5c4ac817c2a9e2a8ad"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2eca6c97796cce5c4ac817c2a9e2a8ad","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"2eca6c97796cce5c4ac817c2a9e2a8ad"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1223,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:06Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1223,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.272635,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"2eca6c97796cce5c4ac817c2a9e2a8ad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931166,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2Nn0.gkMhT4G6_IBfdff8PwOZs1RDSuzvWiYgARJKpNzxy2U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2eca6c97796cce5c4ac817c2a9e2a8ad","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02c2d82d-913d-4f99-86f5-8a124594494b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02c2d82d-913d-4f99-86f5-8a124594494b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:06.224034573Z"}]},"request_id":"a3b5e3ec-fbc2-493d-9b52-b00719ba5fa5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931166.7175906} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2eca6c97796cce5c4ac817c2a9e2a8ad","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cb2f7d2e-20d8-4969-bf84-e71a7e86e39b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931166.7243118} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2eca6c97796cce5c4ac817c2a9e2a8ad","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02c2d82d-913d-4f99-86f5-8a124594494b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02c2d82d-913d-4f99-86f5-8a124594494b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:06.224034573Z"}]},"request_id":"c2bde040-dcb2-42ce-a446-92f6ba264afc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931166.7370815} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2eca6c97796cce5c4ac817c2a9e2a8ad","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"2eca6c97796cce5c4ac817c2a9e2a8ad"} gateway-1 | {"time_local":"21/Sep/2024:15:06:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/02c2d82d-913d-4f99-86f5-8a124594494b HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.043","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"2eca6c97796cce5c4ac817c2a9e2a8ad"} device-1 | {"level":"info","message":"PATCH /devices/02c2d82d-913d-4f99-86f5-8a124594494b 200 37ms","method":"PATCH","requestID":"2eca6c97796cce5c4ac817c2a9e2a8ad","responseTime":37,"status":200,"url":"/devices/02c2d82d-913d-4f99-86f5-8a124594494b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2Nn0.gkMhT4G6_IBfdff8PwOZs1RDSuzvWiYgARJKpNzxy2U","level":"info","message":"auth send jwt","requestID":"100361ae28919d1620c6b6a2a5a90cb3"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"100361ae28919d1620c6b6a2a5a90cb3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"100361ae28919d1620c6b6a2a5a90cb3"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1224,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:06Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1224,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.66413,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"100361ae28919d1620c6b6a2a5a90cb3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931166,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2Nn0.gkMhT4G6_IBfdff8PwOZs1RDSuzvWiYgARJKpNzxy2U"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"100361ae28919d1620c6b6a2a5a90cb3","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"100361ae28919d1620c6b6a2a5a90cb3"} gateway-1 | {"time_local":"21/Sep/2024:15:06:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/02c2d82d-913d-4f99-86f5-8a124594494b/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"100361ae28919d1620c6b6a2a5a90cb3"} device-1 | {"level":"info","message":"POST /devices/02c2d82d-913d-4f99-86f5-8a124594494b/websocket 200 17ms","method":"POST","requestID":"100361ae28919d1620c6b6a2a5a90cb3","responseTime":17,"status":200,"url":"/devices/02c2d82d-913d-4f99-86f5-8a124594494b/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"76ea2b6260eba34ea7afb3e707278584","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"76ea2b6260eba34ea7afb3e707278584","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"76ea2b6260eba34ea7afb3e707278584"} device-1 | {"level":"info","message":"OPTIONS /devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e/websocket 200 1ms","method":"OPTIONS","requestID":"76ea2b6260eba34ea7afb3e707278584","responseTime":1,"status":200,"url":"/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2OH0.7RVMCIaxujYvn6SWhhKFDS_e_77fFYPnKiPN4GAATBY","level":"info","message":"auth send jwt","requestID":"b607065a4b0043602473358174627f76"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b607065a4b0043602473358174627f76","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b607065a4b0043602473358174627f76"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1225,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1225,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.230926,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b607065a4b0043602473358174627f76","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931168,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2OH0.7RVMCIaxujYvn6SWhhKFDS_e_77fFYPnKiPN4GAATBY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b607065a4b0043602473358174627f76","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b607065a4b0043602473358174627f76"} gateway-1 | {"time_local":"21/Sep/2024:15:06:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b607065a4b0043602473358174627f76"} device-1 | {"level":"info","message":"POST /devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e/websocket 200 20ms","method":"POST","requestID":"b607065a4b0043602473358174627f76","responseTime":20,"status":200,"url":"/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2d7e0b3c9cee38e6c2a69981513c8bdc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2d7e0b3c9cee38e6c2a69981513c8bdc","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e? 200 1ms","method":"OPTIONS","requestID":"2d7e0b3c9cee38e6c2a69981513c8bdc","responseTime":1,"status":200,"url":"/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2d7e0b3c9cee38e6c2a69981513c8bdc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2OH0.7RVMCIaxujYvn6SWhhKFDS_e_77fFYPnKiPN4GAATBY","level":"info","message":"auth send jwt","requestID":"620ae08b839aba2e77344636918bc243"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"620ae08b839aba2e77344636918bc243","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"620ae08b839aba2e77344636918bc243"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1226,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1226,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.280912,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"620ae08b839aba2e77344636918bc243","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931168,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2OH0.7RVMCIaxujYvn6SWhhKFDS_e_77fFYPnKiPN4GAATBY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"620ae08b839aba2e77344636918bc243","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dddd803-00b3-440f-9677-a2de3ea6ac3e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dddd803-00b3-440f-9677-a2de3ea6ac3e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:06.179662586Z"}]},"request_id":"d06138e6-cd2b-42f4-a005-7a1e48dcf634","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931168.3366246} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"620ae08b839aba2e77344636918bc243","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"244d9b14-6f21-45cd-a4dd-0c2302bb28e7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931168.3439264} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"620ae08b839aba2e77344636918bc243","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dddd803-00b3-440f-9677-a2de3ea6ac3e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dddd803-00b3-440f-9677-a2de3ea6ac3e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:06.179662586Z"}]},"request_id":"a24bc02c-e0ee-49dc-b28e-9fdbdd65af40","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931168.357183} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"620ae08b839aba2e77344636918bc243","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"620ae08b839aba2e77344636918bc243"} device-1 | {"level":"info","message":"PATCH /devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e? 200 38ms","method":"PATCH","requestID":"620ae08b839aba2e77344636918bc243","responseTime":38,"status":200,"url":"/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.044","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"620ae08b839aba2e77344636918bc243"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2OH0.7RVMCIaxujYvn6SWhhKFDS_e_77fFYPnKiPN4GAATBY","level":"info","message":"auth send jwt","requestID":"6604b6cfd9584819946c03cfd3f52dc7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6604b6cfd9584819946c03cfd3f52dc7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6604b6cfd9584819946c03cfd3f52dc7"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1227,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1227,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.145995,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"6604b6cfd9584819946c03cfd3f52dc7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931168,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2OH0.7RVMCIaxujYvn6SWhhKFDS_e_77fFYPnKiPN4GAATBY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6604b6cfd9584819946c03cfd3f52dc7","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dddd803-00b3-440f-9677-a2de3ea6ac3e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dddd803-00b3-440f-9677-a2de3ea6ac3e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:06.179662586Z"}]},"request_id":"107c3ac8-81c0-46b2-ad99-a9cfa0e8e042","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931168.386121} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6604b6cfd9584819946c03cfd3f52dc7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6604b6cfd9584819946c03cfd3f52dc7"} gateway-1 | {"time_local":"21/Sep/2024:15:06:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6604b6cfd9584819946c03cfd3f52dc7"} device-1 | {"level":"info","message":"GET /devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e? 200 17ms","method":"GET","requestID":"6604b6cfd9584819946c03cfd3f52dc7","responseTime":18,"status":200,"url":"/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2OH0.7RVMCIaxujYvn6SWhhKFDS_e_77fFYPnKiPN4GAATBY","level":"info","message":"auth send jwt","requestID":"a8e346302114b9cafab1c90d19d6f3fb"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a8e346302114b9cafab1c90d19d6f3fb","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a8e346302114b9cafab1c90d19d6f3fb"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1228,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1228,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.35799,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a8e346302114b9cafab1c90d19d6f3fb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931168,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2OH0.7RVMCIaxujYvn6SWhhKFDS_e_77fFYPnKiPN4GAATBY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a8e346302114b9cafab1c90d19d6f3fb","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02c2d82d-913d-4f99-86f5-8a124594494b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02c2d82d-913d-4f99-86f5-8a124594494b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:06.224034573Z"}]},"request_id":"28167d5a-8629-4d54-ad5b-832796c6e88f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931168.41146} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a8e346302114b9cafab1c90d19d6f3fb","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a8e346302114b9cafab1c90d19d6f3fb"} device-1 | {"level":"info","message":"GET /devices/02c2d82d-913d-4f99-86f5-8a124594494b? 200 17ms","method":"GET","requestID":"a8e346302114b9cafab1c90d19d6f3fb","responseTime":17,"status":200,"url":"/devices/02c2d82d-913d-4f99-86f5-8a124594494b?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/02c2d82d-913d-4f99-86f5-8a124594494b? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a8e346302114b9cafab1c90d19d6f3fb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2OH0.7RVMCIaxujYvn6SWhhKFDS_e_77fFYPnKiPN4GAATBY","level":"info","message":"auth send jwt","requestID":"a17da15b858a53abf32080f24bf5fb99"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a17da15b858a53abf32080f24bf5fb99","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"a17da15b858a53abf32080f24bf5fb99"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1229,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1229,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.228761,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a17da15b858a53abf32080f24bf5fb99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931168,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2OH0.7RVMCIaxujYvn6SWhhKFDS_e_77fFYPnKiPN4GAATBY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a17da15b858a53abf32080f24bf5fb99","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078"},"level":"info","message":"Attempting to run experiment","requestID":"a17da15b858a53abf32080f24bf5fb99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078"},"level":"info","message":"Attempting to book experiment","requestID":"a17da15b858a53abf32080f24bf5fb99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078"},"level":"info","message":"Successfully booked experiment","requestID":"a17da15b858a53abf32080f24bf5fb99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"07fc3230-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"07fc8050-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1230,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1230,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.310219,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"07fc3230-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931168,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2OH0.7RVMCIaxujYvn6SWhhKFDS_e_77fFYPnKiPN4GAATBY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"07fc3230-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38446","level":"info","msg":"Received request.","req_id":1231,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"client_addr":"127.0.0.1:38446","level":"info","msg":"Sent response.","req_id":1231,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.235036,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"07fc8050-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931168,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2OH0.7RVMCIaxujYvn6SWhhKFDS_e_77fFYPnKiPN4GAATBY"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"07fc8050-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dddd803-00b3-440f-9677-a2de3ea6ac3e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dddd803-00b3-440f-9677-a2de3ea6ac3e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:06.179662586Z"}]},"request_id":"1248249b-3852-4baf-b3b7-1e263306a55b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931168.477362} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"07fc3230-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02c2d82d-913d-4f99-86f5-8a124594494b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02c2d82d-913d-4f99-86f5-8a124594494b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:06.224034573Z"}]},"request_id":"f1d5fa71-94b6-42ad-a653-0e51b270c743","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931168.481375} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"07fc3230-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"07fc8050-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e? 200 15ms","method":"GET","requestID":"07fc3230-782b-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"07fc8050-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/02c2d82d-913d-4f99-86f5-8a124594494b? 200 17ms","method":"GET","requestID":"07fc8050-782b-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/02c2d82d-913d-4f99-86f5-8a124594494b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078"},"level":"info","message":"Setting up experiment","requestID":"a17da15b858a53abf32080f24bf5fb99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"a17da15b858a53abf32080f24bf5fb99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078"},"level":"info","message":"Successfully locked booking for experiment","requestID":"a17da15b858a53abf32080f24bf5fb99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"a17da15b858a53abf32080f24bf5fb99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"a17da15b858a53abf32080f24bf5fb99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078"},"level":"info","message":"Attempting to update booking for experiment","requestID":"a17da15b858a53abf32080f24bf5fb99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078"},"level":"info","message":"Successfully updated booking for experiment","requestID":"a17da15b858a53abf32080f24bf5fb99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078"},"level":"info","message":"Successfully set up experiment","requestID":"a17da15b858a53abf32080f24bf5fb99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"080707a0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"080755c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0807a3e0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1232,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:08Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078"},"level":"info","message":"Successfully running experiment","requestID":"a17da15b858a53abf32080f24bf5fb99"} authorization-1 | {"client_addr":"127.0.0.1:38446","level":"info","msg":"Received request.","req_id":1233,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1232,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.656568,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"client_addr":"127.0.0.1:38446","level":"info","msg":"Sent response.","req_id":1233,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.029079,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"080707a0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931168,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2OH0.7RVMCIaxujYvn6SWhhKFDS_e_77fFYPnKiPN4GAATBY"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"080707a0-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"080755c0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931168,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2OH0.7RVMCIaxujYvn6SWhhKFDS_e_77fFYPnKiPN4GAATBY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"080755c0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38452","level":"info","msg":"Received request.","req_id":1234,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02c2d82d-913d-4f99-86f5-8a124594494b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02c2d82d-913d-4f99-86f5-8a124594494b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:06.224034573Z"}]},"request_id":"4967b1c0-aee9-4c8d-a367-c8b57c708bd2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931168.5546596} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dddd803-00b3-440f-9677-a2de3ea6ac3e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a0b82e9e-3dd8-4e1c-853e-0f6a73a8df26","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931168.5551426} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"080755c0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dddd803-00b3-440f-9677-a2de3ea6ac3e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dddd803-00b3-440f-9677-a2de3ea6ac3e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:06.179662586Z"}]},"request_id":"456ed8c2-3b52-494c-8ed8-d1656d18e0bb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931168.5556169} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"080707a0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:38452","level":"info","msg":"Sent response.","req_id":1234,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.171299,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0807a3e0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 16ms","method":"POST","requestID":"0807a3e0-782b-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"080755c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/02c2d82d-913d-4f99-86f5-8a124594494b? 200 24ms","method":"GET","requestID":"080755c0-782b-11ef-88d4-5fea3f61bb98","responseTime":24,"status":200,"url":"/devices/02c2d82d-913d-4f99-86f5-8a124594494b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"080707a0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e? 200 28ms","method":"GET","requestID":"080707a0-782b-11ef-88d4-5fea3f61bb98","responseTime":28,"status":200,"url":"/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0807a3e0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e/signaling 200 25ms","method":"POST","requestID":"0807a3e0-782b-11ef-88d4-5fea3f61bb98","responseTime":25,"status":200,"url":"/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F61273613-2dbe-4a1e-8c54-0c5b29a0b078#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F61273613-2dbe-4a1e-8c54-0c5b29a0b078","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"c3d1f9f3-abd9-4a72-b49f-d77cdd4b952b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931168.567721} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a0cb2eb8-0bb6-4744-9003-23a5fd49a3c0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931168.5681615} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"a17da15b858a53abf32080f24bf5fb99","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"080bc290-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"080c37c0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1235,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"client_addr":"127.0.0.1:38446","level":"info","msg":"Received request.","req_id":1236,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dddd803-00b3-440f-9677-a2de3ea6ac3e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c892135b-c49e-4ef9-a6cb-314d248be686","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931168.5767436} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1235,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.401101,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"080bc290-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"080bc290-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"a17da15b858a53abf32080f24bf5fb99"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02c2d82d-913d-4f99-86f5-8a124594494b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8cafcd5e-ded2-4392-b38b-141fbddc47bc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931168.578937} authorization-1 | {"client_addr":"127.0.0.1:38446","level":"info","msg":"Sent response.","req_id":1236,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.500093,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:08Z"} gateway-1 | {"time_local":"21/Sep/2024:15:06:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.162","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a17da15b858a53abf32080f24bf5fb99"} experiment-1 | {"level":"info","message":"POST /experiments? 201 155ms","method":"POST","requestID":"a17da15b858a53abf32080f24bf5fb99","responseTime":155,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"080c37c0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"080c37c0-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2OH0.7RVMCIaxujYvn6SWhhKFDS_e_77fFYPnKiPN4GAATBY","level":"info","message":"auth send jwt","requestID":"d4ca889ce2f89cbc60b77d0bd0854489"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d4ca889ce2f89cbc60b77d0bd0854489","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"080bc290-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e/signaling 200 17ms","method":"POST","requestID":"080bc290-782b-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"080c37c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/02c2d82d-913d-4f99-86f5-8a124594494b/signaling 200 15ms","method":"POST","requestID":"080c37c0-782b-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/02c2d82d-913d-4f99-86f5-8a124594494b/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d4ca889ce2f89cbc60b77d0bd0854489"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"080f1df0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1237,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1237,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.001474,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"client_addr":"127.0.0.1:38446","level":"info","msg":"Received request.","req_id":1238,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d4ca889ce2f89cbc60b77d0bd0854489","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931168,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2OH0.7RVMCIaxujYvn6SWhhKFDS_e_77fFYPnKiPN4GAATBY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d4ca889ce2f89cbc60b77d0bd0854489","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02c2d82d-913d-4f99-86f5-8a124594494b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ec3a302d-28ad-452b-b119-0244d2aff738","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931168.5965624} authorization-1 | {"client_addr":"127.0.0.1:38446","level":"info","msg":"Sent response.","req_id":1238,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.534719,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"080f1df0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"080f1df0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dddd803-00b3-440f-9677-a2de3ea6ac3e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dddd803-00b3-440f-9677-a2de3ea6ac3e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:06.179662586Z"}]},"request_id":"8c765f25-7eaa-4304-9813-c0fa49406992","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931168.6003046} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d4ca889ce2f89cbc60b77d0bd0854489","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"080f1df0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/02c2d82d-913d-4f99-86f5-8a124594494b/signaling 200 15ms","method":"POST","requestID":"080f1df0-782b-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/02c2d82d-913d-4f99-86f5-8a124594494b/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d4ca889ce2f89cbc60b77d0bd0854489"} gateway-1 | {"time_local":"21/Sep/2024:15:06:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d4ca889ce2f89cbc60b77d0bd0854489"} device-1 | {"level":"info","message":"GET /devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e? 200 19ms","method":"GET","requestID":"d4ca889ce2f89cbc60b77d0bd0854489","responseTime":19,"status":200,"url":"/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"a17da15b858a53abf32080f24bf5fb99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0811dd10-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"08120420-782b-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2OH0.7RVMCIaxujYvn6SWhhKFDS_e_77fFYPnKiPN4GAATBY","level":"info","message":"auth send jwt","requestID":"035d36184e594a71f72f160bea650b56"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"035d36184e594a71f72f160bea650b56","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1239,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1239,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.005645,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:08Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"035d36184e594a71f72f160bea650b56"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0811dd10-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931168,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2OH0.7RVMCIaxujYvn6SWhhKFDS_e_77fFYPnKiPN4GAATBY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0811dd10-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38446","level":"info","msg":"Received request.","req_id":1240,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"client_addr":"127.0.0.1:38446","level":"info","msg":"Sent response.","req_id":1240,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.29373,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"08120420-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931168,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2OH0.7RVMCIaxujYvn6SWhhKFDS_e_77fFYPnKiPN4GAATBY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"08120420-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1241,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1241,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.805431,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"035d36184e594a71f72f160bea650b56","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931168,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2OH0.7RVMCIaxujYvn6SWhhKFDS_e_77fFYPnKiPN4GAATBY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"035d36184e594a71f72f160bea650b56","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dddd803-00b3-440f-9677-a2de3ea6ac3e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dddd803-00b3-440f-9677-a2de3ea6ac3e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:06.179662586Z"}]},"request_id":"9aa238db-e744-43fa-af82-12ea55f1248d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931168.6199172} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02c2d82d-913d-4f99-86f5-8a124594494b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02c2d82d-913d-4f99-86f5-8a124594494b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:06.224034573Z"}]},"request_id":"40d678f5-1f07-43e5-a63f-9e6a69fad291","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931168.6209774} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0811dd10-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"08120420-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02c2d82d-913d-4f99-86f5-8a124594494b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02c2d82d-913d-4f99-86f5-8a124594494b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:06.224034573Z"}]},"request_id":"b9e26e45-46ef-4ff0-810d-2454d051e247","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931168.625981} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"035d36184e594a71f72f160bea650b56","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0811dd10-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e? 200 21ms","method":"GET","requestID":"0811dd10-782b-11ef-88d4-5fea3f61bb98","responseTime":21,"status":200,"url":"/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"08120420-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/02c2d82d-913d-4f99-86f5-8a124594494b? 200 21ms","method":"GET","requestID":"08120420-782b-11ef-88d4-5fea3f61bb98","responseTime":21,"status":200,"url":"/devices/02c2d82d-913d-4f99-86f5-8a124594494b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078"},"level":"info","message":"Building connection plan","requestID":"a17da15b858a53abf32080f24bf5fb99"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"fdd61418-8ec1-4df8-b44b-1a5dfc52ca4e"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"37c62d59-442b-4349-b0ac-20705912967b"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"fabef30e-d042-4336-8177-a5db361ef069"}]},"level":"info","message":"Built pairwise service configurations","requestID":"a17da15b858a53abf32080f24bf5fb99"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"a17da15b858a53abf32080f24bf5fb99"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"035d36184e594a71f72f160bea650b56"} gateway-1 | {"time_local":"21/Sep/2024:15:06:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/02c2d82d-913d-4f99-86f5-8a124594494b? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"035d36184e594a71f72f160bea650b56"} device-1 | {"level":"info","message":"GET /devices/02c2d82d-913d-4f99-86f5-8a124594494b? 200 20ms","method":"GET","requestID":"035d36184e594a71f72f160bea650b56","responseTime":20,"status":200,"url":"/devices/02c2d82d-913d-4f99-86f5-8a124594494b?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"0815ada0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1242,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1242,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.951655,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0815ada0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931168,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE2OH0.7RVMCIaxujYvn6SWhhKFDS_e_77fFYPnKiPN4GAATBY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0815ada0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"ea90f73a-d7de-4bb9-9601-b3bb646803fe","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931168.6482513} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7337c4ec-bb75-485e-980f-22ef752107cb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931168.648693} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"0815ada0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"0815ada0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"0815ada0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/bebe9d25-31f0-48d1-8819-3f17eea541b9'","requestID":"0815ada0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/bebe9d25-31f0-48d1-8819-3f17eea541b9'","requestID":"0815ada0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"0815ada0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 28ms","method":"POST","requestID":"0815ada0-782b-11ef-88d4-5fea3f61bb98","responseTime":28,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"0815ada0-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"a17da15b858a53abf32080f24bf5fb99"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"081f71a0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1243,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dddd803-00b3-440f-9677-a2de3ea6ac3e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d73b17d2-53bb-43e1-aa3c-c13964eec9ee","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931168.702828} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1243,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.408783,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"081f71a0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"081f71a0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"081f71a0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e/signaling 200 9ms","method":"POST","requestID":"081f71a0-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"08211f50-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1244,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02c2d82d-913d-4f99-86f5-8a124594494b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e58d391f-1b92-4263-bda7-a692c831aca1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931168.7138093} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1244,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.379417,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"08211f50-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"08211f50-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"08211f50-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/02c2d82d-913d-4f99-86f5-8a124594494b/signaling 200 8ms","method":"POST","requestID":"08211f50-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/02c2d82d-913d-4f99-86f5-8a124594494b/signaling"} device-1 | {"device":"0dddd803-00b3-440f-9677-a2de3ea6ac3e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"0dddd803-00b3-440f-9677-a2de3ea6ac3e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 825379681293920124 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:YqfV\r\na=ice-pwd:2/ghttz2PLyHZjcgM6kLU7eM\r\na=ice-options:trickle\r\na=fingerprint:sha-256 73:33:0D:FF:9A:03:44:83:74:6C:CE:CB:D5:0B:01:8C:38:3A:55:E0:98:BD:00:F8:FB:BE:33:6D:8E:B1:8B:1A\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"0dddd803-00b3-440f-9677-a2de3ea6ac3e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"0dddd803-00b3-440f-9677-a2de3ea6ac3e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"02c2d82d-913d-4f99-86f5-8a124594494b","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"bebe9d25-31f0-48d1-8819-3f17eea541b9","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"02c2d82d-913d-4f99-86f5-8a124594494b","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"02c2d82d-913d-4f99-86f5-8a124594494b","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"02c2d82d-913d-4f99-86f5-8a124594494b","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"02c2d82d-913d-4f99-86f5-8a124594494b","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bebe9d25-31f0-48d1-8819-3f17eea541b9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bebe9d25-31f0-48d1-8819-3f17eea541b9","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c477bd0f2fb2d9a4b2365eb173403af2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c477bd0f2fb2d9a4b2365eb173403af2","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/bebe9d25-31f0-48d1-8819-3f17eea541b9"}}},"level":"info","message":"received a callback","requestID":"c477bd0f2fb2d9a4b2365eb173403af2"} gateway-1 | {"time_local":"21/Sep/2024:15:06:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"c477bd0f2fb2d9a4b2365eb173403af2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"c477bd0f2fb2d9a4b2365eb173403af2","responseTime":7,"status":200,"url":"/callbacks/experiment"} device-1 | {"content":{"candidate":"candidate:522715182 1 udp 2113937151 bf1f76fd-d026-4355-9237-5e2bcd22a6a4.local 43499 typ host generation 0 ufrag YqfV network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"0dddd803-00b3-440f-9677-a2de3ea6ac3e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2349048125 1 udp 1677729535 141.24.211.56 43499 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag YqfV network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"0dddd803-00b3-440f-9677-a2de3ea6ac3e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:841947855 1 udp 33562623 141.24.210.113 57312 typ relay raddr 141.24.211.56 rport 43499 generation 0 ufrag YqfV network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"0dddd803-00b3-440f-9677-a2de3ea6ac3e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"0dddd803-00b3-440f-9677-a2de3ea6ac3e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e'"} device-1 | {"data":{"peerconnection":"bebe9d25-31f0-48d1-8819-3f17eea541b9","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e'"} device-1 | {"device":"02c2d82d-913d-4f99-86f5-8a124594494b","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"0dddd803-00b3-440f-9677-a2de3ea6ac3e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"bebe9d25-31f0-48d1-8819-3f17eea541b9","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"02c2d82d-913d-4f99-86f5-8a124594494b","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bebe9d25-31f0-48d1-8819-3f17eea541b9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bebe9d25-31f0-48d1-8819-3f17eea541b9","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3bc807b3e301df903dce64e11ad1979e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3bc807b3e301df903dce64e11ad1979e","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/bebe9d25-31f0-48d1-8819-3f17eea541b9"}}},"level":"info","message":"received a callback","requestID":"3bc807b3e301df903dce64e11ad1979e"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"096203c0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1245,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:10Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbebe9d25-31f0-48d1-8819-3f17eea541b9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"634b9ee1-5181-4a11-8972-85ce56dca4f9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931170.8185346} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1245,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.760686,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/bebe9d25-31f0-48d1-8819-3f17eea541b9","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"096203c0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/bebe9d25-31f0-48d1-8819-3f17eea541b9","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"096203c0-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"096203c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/bebe9d25-31f0-48d1-8819-3f17eea541b9 200 12ms","method":"GET","requestID":"096203c0-782b-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/peerconnections/bebe9d25-31f0-48d1-8819-3f17eea541b9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 42ms","method":"POST","requestID":"3bc807b3e301df903dce64e11ad1979e","responseTime":42,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch","requestID":"3bc807b3e301df903dce64e11ad1979e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"09675af0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1246,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:10Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02c2d82d-913d-4f99-86f5-8a124594494b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"57d3da91-e12a-4f24-919f-2807549f4039","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931170.8560522} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1246,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.467243,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"09675af0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"09675af0-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"09675af0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/02c2d82d-913d-4f99-86f5-8a124594494b/signaling 200 16ms","method":"POST","requestID":"09675af0-782b-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/02c2d82d-913d-4f99-86f5-8a124594494b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"096a4120-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1247,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:10Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dddd803-00b3-440f-9677-a2de3ea6ac3e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ab494b1e-7dda-4ddd-bd2d-6cc5269a5cba","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931170.8731196} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1247,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.042977,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"096a4120-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"096a4120-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"096a4120-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e/signaling 200 13ms","method":"POST","requestID":"096a4120-782b-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3MH0.thn6sfN16CaaT5ij3wLNTp5W3p3xmrZcWpT8apFo6cU","level":"info","message":"auth send jwt","requestID":"9590855f02945f5320c4d7829aff09f2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9590855f02945f5320c4d7829aff09f2","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078","requestID":"9590855f02945f5320c4d7829aff09f2"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1248,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:10Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1248,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.159853,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"9590855f02945f5320c4d7829aff09f2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931170,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3MH0.thn6sfN16CaaT5ij3wLNTp5W3p3xmrZcWpT8apFo6cU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9590855f02945f5320c4d7829aff09f2","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078","requestID":"9590855f02945f5320c4d7829aff09f2"} experiment-1 | {"level":"info","message":"GET /experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078 200 15ms","method":"GET","requestID":"9590855f02945f5320c4d7829aff09f2","responseTime":15,"status":200,"url":"/experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078"} gateway-1 | {"time_local":"21/Sep/2024:15:06:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078 HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9590855f02945f5320c4d7829aff09f2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3MH0.thn6sfN16CaaT5ij3wLNTp5W3p3xmrZcWpT8apFo6cU","level":"info","message":"auth send jwt","requestID":"0a3fe1621c4d69a9b458e4323270912c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0a3fe1621c4d69a9b458e4323270912c","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078","requestID":"0a3fe1621c4d69a9b458e4323270912c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1249,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:10Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1249,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.168735,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:10Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0a3fe1621c4d69a9b458e4323270912c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931170,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3MH0.thn6sfN16CaaT5ij3wLNTp5W3p3xmrZcWpT8apFo6cU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0a3fe1621c4d69a9b458e4323270912c","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078"},"level":"info","message":"Attempting to finish experiment","requestID":"0a3fe1621c4d69a9b458e4323270912c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"09762800-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1250,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:10Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1250,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":2.772968,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:10Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/bebe9d25-31f0-48d1-8819-3f17eea541b9","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"09762800-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/bebe9d25-31f0-48d1-8819-3f17eea541b9","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931170,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3MH0.thn6sfN16CaaT5ij3wLNTp5W3p3xmrZcWpT8apFo6cU"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"09762800-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/bebe9d25-31f0-48d1-8819-3f17eea541b9","device":"0dddd803-00b3-440f-9677-a2de3ea6ac3e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"02c2d82d-913d-4f99-86f5-8a124594494b","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"02c2d82d-913d-4f99-86f5-8a124594494b","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"02c2d82d-913d-4f99-86f5-8a124594494b","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bebe9d25-31f0-48d1-8819-3f17eea541b9' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/bebe9d25-31f0-48d1-8819-3f17eea541b9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bebe9d25-31f0-48d1-8819-3f17eea541b9","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbebe9d25-31f0-48d1-8819-3f17eea541b9': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbebe9d25-31f0-48d1-8819-3f17eea541b9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"877c1aaa-ddf6-43c5-815d-0177da447fde","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931170.9751775} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ede14d0c-e6a6-4e77-a222-512ce90e98f7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931170.9756818} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4596d1e7e845c721830487b203da093c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"09762800-782b-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4596d1e7e845c721830487b203da093c","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2c164bf3645048b01a696dd88e843233","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2c164bf3645048b01a696dd88e843233","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/bebe9d25-31f0-48d1-8819-3f17eea541b9"}}},"level":"info","message":"received a callback","requestID":"4596d1e7e845c721830487b203da093c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"09762800-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/bebe9d25-31f0-48d1-8819-3f17eea541b9"}}},"level":"info","message":"received a callback","requestID":"2c164bf3645048b01a696dd88e843233"} device-1 | {"level":"info","message":"DELETE /peerconnections/bebe9d25-31f0-48d1-8819-3f17eea541b9 204 42ms","method":"DELETE","requestID":"09762800-782b-11ef-88d4-5fea3f61bb98","responseTime":42,"status":204,"url":"/peerconnections/bebe9d25-31f0-48d1-8819-3f17eea541b9"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078"},"level":"info","message":"Successfully finished experiment","requestID":"0a3fe1621c4d69a9b458e4323270912c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"097fc4f0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1251,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:11Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02c2d82d-913d-4f99-86f5-8a124594494b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ea25ec7c-4615-4e32-a0d5-00f8ff3ea94e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931171.0134325} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1251,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.924996,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"097fc4f0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"097fc4f0-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"097fc4f0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/02c2d82d-913d-4f99-86f5-8a124594494b/signaling 200 13ms","method":"POST","requestID":"097fc4f0-782b-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/02c2d82d-913d-4f99-86f5-8a124594494b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"098235f0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F61273613-2dbe-4a1e-8c54-0c5b29a0b078': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F61273613-2dbe-4a1e-8c54-0c5b29a0b078","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"1db6c130-667a-4d07-8a6c-85d7b96b8d5a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931171.0239177} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f5dad869-162c-4469-8a58-f73c6547f262","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931171.0243573} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"0a3fe1621c4d69a9b458e4323270912c","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1252,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:11Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dddd803-00b3-440f-9677-a2de3ea6ac3e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b381883f-aaaf-402a-a0bc-7603a6ac1c8a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931171.0310206} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1252,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.065979,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"098235f0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"098235f0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"098235f0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e/signaling 200 14ms","method":"POST","requestID":"098235f0-782b-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078","requestID":"0a3fe1621c4d69a9b458e4323270912c"} gateway-1 | {"time_local":"21/Sep/2024:15:06:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.169","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0a3fe1621c4d69a9b458e4323270912c"} gateway-1 | {"time_local":"21/Sep/2024:15:06:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3621","request_time":"4.329","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"400a87ce64580b69d751058983f306f2"} experiment-1 | {"level":"info","message":"DELETE /experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078 204 164ms","method":"DELETE","requestID":"0a3fe1621c4d69a9b458e4323270912c","responseTime":164,"status":204,"url":"/experiments/61273613-2dbe-4a1e-8c54-0c5b29a0b078"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 117ms","method":"POST","requestID":"4596d1e7e845c721830487b203da093c","responseTime":117,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.122","http_referrer":"","http_user_agent":"node-fetch","requestID":"4596d1e7e845c721830487b203da093c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 113ms","method":"POST","requestID":"2c164bf3645048b01a696dd88e843233","responseTime":113,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.122","http_referrer":"","http_user_agent":"node-fetch","requestID":"2c164bf3645048b01a696dd88e843233"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3MX0.lcDxmwq6Yud6mnHXeS0WqT4Dl8drRU4CdCr_lCEdQHQ","level":"info","message":"auth send jwt","requestID":"9211bcb0165a068ca42bbbe8d2d66488"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9211bcb0165a068ca42bbbe8d2d66488","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9211bcb0165a068ca42bbbe8d2d66488"} gateway-1 | {"time_local":"21/Sep/2024:15:06:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3089","request_time":"2.826","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4aeeab56a9f2029d00395540f142dab2"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1253,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:11Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1253,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.936677,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"9211bcb0165a068ca42bbbe8d2d66488","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931171,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3MX0.lcDxmwq6Yud6mnHXeS0WqT4Dl8drRU4CdCr_lCEdQHQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9211bcb0165a068ca42bbbe8d2d66488","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/02c2d82d-913d-4f99-86f5-8a124594494b' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47524fd1-11bb-43d5-aff1-9557edc3dab8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6e1671a5-2154-4f41-865b-fc5a86086fe3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931171.122191} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9211bcb0165a068ca42bbbe8d2d66488","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/0dddd803-00b3-440f-9677-a2de3ea6ac3e' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c206ea3a-0a84-4894-a85a-08a85a65f222","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931171.1269097} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"9211bcb0165a068ca42bbbe8d2d66488","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47524fd1-11bb-43d5-aff1-9557edc3dab8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"1812557a-2408-4b56-b812-06ad5dbd4fdf","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931171.1360486} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5b09b902-f77e-43ad-8592-4d50269dfdc3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931171.1361752} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"9211bcb0165a068ca42bbbe8d2d66488","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47524fd1-11bb-43d5-aff1-9557edc3dab8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47524fd1-11bb-43d5-aff1-9557edc3dab8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:11.136016663Z"}]},"request_id":"51c1598b-679f-4a73-a7ab-a2a9cce141c5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931171.1407177} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9211bcb0165a068ca42bbbe8d2d66488","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9211bcb0165a068ca42bbbe8d2d66488"} gateway-1 | {"time_local":"21/Sep/2024:15:06:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9211bcb0165a068ca42bbbe8d2d66488"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"9211bcb0165a068ca42bbbe8d2d66488","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3MX0.lcDxmwq6Yud6mnHXeS0WqT4Dl8drRU4CdCr_lCEdQHQ","level":"info","message":"auth send jwt","requestID":"ddb25df44a543aa7f59bbf66c677b32f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ddb25df44a543aa7f59bbf66c677b32f","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ddb25df44a543aa7f59bbf66c677b32f"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1254,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:11Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1254,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.724112,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ddb25df44a543aa7f59bbf66c677b32f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931171,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3MX0.lcDxmwq6Yud6mnHXeS0WqT4Dl8drRU4CdCr_lCEdQHQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ddb25df44a543aa7f59bbf66c677b32f","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F799cc7e1-4596-41f6-94f8-19b680a9020f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"73f5d370-8d08-4410-aeb0-16da8338d4ca","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931171.1706674} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ddb25df44a543aa7f59bbf66c677b32f","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8b3a22cd-d194-4715-93a5-39653a943c18","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931171.1757908} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ddb25df44a543aa7f59bbf66c677b32f","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F799cc7e1-4596-41f6-94f8-19b680a9020f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"b32b6884-bbd1-4496-bcd3-a0e21568b982","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931171.1872706} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c7787934-afaf-42e2-9e50-7aac30b4fca7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931171.1874292} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"ddb25df44a543aa7f59bbf66c677b32f","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F799cc7e1-4596-41f6-94f8-19b680a9020f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F799cc7e1-4596-41f6-94f8-19b680a9020f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:11.187224838Z"}]},"request_id":"a360322b-9e23-4781-950a-de139208473d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931171.1916764} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ddb25df44a543aa7f59bbf66c677b32f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ddb25df44a543aa7f59bbf66c677b32f"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"ddb25df44a543aa7f59bbf66c677b32f","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ddb25df44a543aa7f59bbf66c677b32f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3MX0.lcDxmwq6Yud6mnHXeS0WqT4Dl8drRU4CdCr_lCEdQHQ","level":"info","message":"auth send jwt","requestID":"6e3937a6f4d8f50bccb1fb3fc2c3abdf"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6e3937a6f4d8f50bccb1fb3fc2c3abdf","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"6e3937a6f4d8f50bccb1fb3fc2c3abdf"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1255,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:11Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1255,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.065128,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"6e3937a6f4d8f50bccb1fb3fc2c3abdf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931171,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3MX0.lcDxmwq6Yud6mnHXeS0WqT4Dl8drRU4CdCr_lCEdQHQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6e3937a6f4d8f50bccb1fb3fc2c3abdf","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47524fd1-11bb-43d5-aff1-9557edc3dab8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47524fd1-11bb-43d5-aff1-9557edc3dab8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:11.136016663Z"}]},"request_id":"fd47b19a-6b1e-46f1-9dde-723867f81b34","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931171.6769822} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6e3937a6f4d8f50bccb1fb3fc2c3abdf","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1091be0d-58ed-42bf-b2d5-3db365f60c3f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931171.6828635} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"6e3937a6f4d8f50bccb1fb3fc2c3abdf","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47524fd1-11bb-43d5-aff1-9557edc3dab8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47524fd1-11bb-43d5-aff1-9557edc3dab8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:11.136016663Z"}]},"request_id":"fab27b3f-bc9d-40c1-adb0-aa80301a5222","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931171.6952956} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6e3937a6f4d8f50bccb1fb3fc2c3abdf","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"6e3937a6f4d8f50bccb1fb3fc2c3abdf"} device-1 | {"level":"info","message":"PATCH /devices/47524fd1-11bb-43d5-aff1-9557edc3dab8 200 33ms","method":"PATCH","requestID":"6e3937a6f4d8f50bccb1fb3fc2c3abdf","responseTime":33,"status":200,"url":"/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8"} gateway-1 | {"time_local":"21/Sep/2024:15:06:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/47524fd1-11bb-43d5-aff1-9557edc3dab8 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.039","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"6e3937a6f4d8f50bccb1fb3fc2c3abdf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3MX0.lcDxmwq6Yud6mnHXeS0WqT4Dl8drRU4CdCr_lCEdQHQ","level":"info","message":"auth send jwt","requestID":"3ccda97716282918832a45c204a4d0fd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3ccda97716282918832a45c204a4d0fd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3ccda97716282918832a45c204a4d0fd"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1256,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:11Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1256,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.968902,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"3ccda97716282918832a45c204a4d0fd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931171,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3MX0.lcDxmwq6Yud6mnHXeS0WqT4Dl8drRU4CdCr_lCEdQHQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3ccda97716282918832a45c204a4d0fd","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3ccda97716282918832a45c204a4d0fd"} device-1 | {"level":"info","message":"POST /devices/47524fd1-11bb-43d5-aff1-9557edc3dab8/websocket 200 18ms","method":"POST","requestID":"3ccda97716282918832a45c204a4d0fd","responseTime":18,"status":200,"url":"/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:06:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/47524fd1-11bb-43d5-aff1-9557edc3dab8/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"3ccda97716282918832a45c204a4d0fd"} device-1 | {"level":"info","message":"device 'http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b26f19fdec2f5841ef607a50784f6468","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b26f19fdec2f5841ef607a50784f6468","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/799cc7e1-4596-41f6-94f8-19b680a9020f/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b26f19fdec2f5841ef607a50784f6468"} device-1 | {"level":"info","message":"OPTIONS /devices/799cc7e1-4596-41f6-94f8-19b680a9020f/websocket 200 2ms","method":"OPTIONS","requestID":"b26f19fdec2f5841ef607a50784f6468","responseTime":2,"status":200,"url":"/devices/799cc7e1-4596-41f6-94f8-19b680a9020f/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3M30.e4eSlhyfsfeIt7ki3P6DAel3EV-DZBkmleGOuoAlK_U","level":"info","message":"auth send jwt","requestID":"71ea774709419c60dba03dd9ab292649"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"71ea774709419c60dba03dd9ab292649","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"71ea774709419c60dba03dd9ab292649"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1257,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1257,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.093048,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"71ea774709419c60dba03dd9ab292649","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931173,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3M30.e4eSlhyfsfeIt7ki3P6DAel3EV-DZBkmleGOuoAlK_U"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"71ea774709419c60dba03dd9ab292649","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"71ea774709419c60dba03dd9ab292649"} device-1 | {"level":"info","message":"POST /devices/799cc7e1-4596-41f6-94f8-19b680a9020f/websocket 200 21ms","method":"POST","requestID":"71ea774709419c60dba03dd9ab292649","responseTime":21,"status":200,"url":"/devices/799cc7e1-4596-41f6-94f8-19b680a9020f/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:06:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/799cc7e1-4596-41f6-94f8-19b680a9020f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"71ea774709419c60dba03dd9ab292649"} device-1 | {"level":"info","message":"device 'http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"34caea91afcc179dc9497f0ba2f836e4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"34caea91afcc179dc9497f0ba2f836e4","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/799cc7e1-4596-41f6-94f8-19b680a9020f? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.005","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"34caea91afcc179dc9497f0ba2f836e4"} device-1 | {"level":"info","message":"OPTIONS /devices/799cc7e1-4596-41f6-94f8-19b680a9020f? 200 1ms","method":"OPTIONS","requestID":"34caea91afcc179dc9497f0ba2f836e4","responseTime":1,"status":200,"url":"/devices/799cc7e1-4596-41f6-94f8-19b680a9020f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3M30.e4eSlhyfsfeIt7ki3P6DAel3EV-DZBkmleGOuoAlK_U","level":"info","message":"auth send jwt","requestID":"5120116ea7f593fccd4b1b969e304f64"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5120116ea7f593fccd4b1b969e304f64","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5120116ea7f593fccd4b1b969e304f64"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1258,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1258,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.218439,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"5120116ea7f593fccd4b1b969e304f64","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931173,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3M30.e4eSlhyfsfeIt7ki3P6DAel3EV-DZBkmleGOuoAlK_U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5120116ea7f593fccd4b1b969e304f64","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F799cc7e1-4596-41f6-94f8-19b680a9020f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F799cc7e1-4596-41f6-94f8-19b680a9020f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:11.187224838Z"}]},"request_id":"00576d63-8b67-45ce-8806-0eb688c5f07c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931173.3073974} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5120116ea7f593fccd4b1b969e304f64","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"976c48c0-b205-4417-8a5b-0da2748ce2fa","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931173.3150325} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"5120116ea7f593fccd4b1b969e304f64","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F799cc7e1-4596-41f6-94f8-19b680a9020f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F799cc7e1-4596-41f6-94f8-19b680a9020f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:11.187224838Z"}]},"request_id":"1068c196-121a-4523-915a-aa33d87d9c35","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931173.32717} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5120116ea7f593fccd4b1b969e304f64","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5120116ea7f593fccd4b1b969e304f64"} gateway-1 | {"time_local":"21/Sep/2024:15:06:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/799cc7e1-4596-41f6-94f8-19b680a9020f? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.043","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5120116ea7f593fccd4b1b969e304f64"} device-1 | {"level":"info","message":"PATCH /devices/799cc7e1-4596-41f6-94f8-19b680a9020f? 200 37ms","method":"PATCH","requestID":"5120116ea7f593fccd4b1b969e304f64","responseTime":37,"status":200,"url":"/devices/799cc7e1-4596-41f6-94f8-19b680a9020f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3M30.e4eSlhyfsfeIt7ki3P6DAel3EV-DZBkmleGOuoAlK_U","level":"info","message":"auth send jwt","requestID":"26683d1b206f49568b3c66f6b4c54060"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"26683d1b206f49568b3c66f6b4c54060","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"26683d1b206f49568b3c66f6b4c54060"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1259,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1259,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.343023,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"26683d1b206f49568b3c66f6b4c54060","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931173,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3M30.e4eSlhyfsfeIt7ki3P6DAel3EV-DZBkmleGOuoAlK_U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"26683d1b206f49568b3c66f6b4c54060","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47524fd1-11bb-43d5-aff1-9557edc3dab8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47524fd1-11bb-43d5-aff1-9557edc3dab8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:11.136016663Z"}]},"request_id":"a7c05e40-e467-4c93-baee-cb3318e5e983","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931173.3542073} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"26683d1b206f49568b3c66f6b4c54060","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"26683d1b206f49568b3c66f6b4c54060"} device-1 | {"level":"info","message":"GET /devices/47524fd1-11bb-43d5-aff1-9557edc3dab8? 200 18ms","method":"GET","requestID":"26683d1b206f49568b3c66f6b4c54060","responseTime":18,"status":200,"url":"/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/47524fd1-11bb-43d5-aff1-9557edc3dab8? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"26683d1b206f49568b3c66f6b4c54060"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3M30.e4eSlhyfsfeIt7ki3P6DAel3EV-DZBkmleGOuoAlK_U","level":"info","message":"auth send jwt","requestID":"dd833ceec7226ea06f8c5bd979ec841e"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"dd833ceec7226ea06f8c5bd979ec841e","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dd833ceec7226ea06f8c5bd979ec841e"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1260,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1260,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.350329,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"dd833ceec7226ea06f8c5bd979ec841e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931173,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3M30.e4eSlhyfsfeIt7ki3P6DAel3EV-DZBkmleGOuoAlK_U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"dd833ceec7226ea06f8c5bd979ec841e","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F799cc7e1-4596-41f6-94f8-19b680a9020f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F799cc7e1-4596-41f6-94f8-19b680a9020f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:11.187224838Z"}]},"request_id":"345f0c59-1ff1-498d-a692-813c2350d257","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931173.3772557} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"dd833ceec7226ea06f8c5bd979ec841e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dd833ceec7226ea06f8c5bd979ec841e"} gateway-1 | {"time_local":"21/Sep/2024:15:06:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/799cc7e1-4596-41f6-94f8-19b680a9020f? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dd833ceec7226ea06f8c5bd979ec841e"} device-1 | {"level":"info","message":"GET /devices/799cc7e1-4596-41f6-94f8-19b680a9020f? 200 17ms","method":"GET","requestID":"dd833ceec7226ea06f8c5bd979ec841e","responseTime":17,"status":200,"url":"/devices/799cc7e1-4596-41f6-94f8-19b680a9020f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3M30.e4eSlhyfsfeIt7ki3P6DAel3EV-DZBkmleGOuoAlK_U","level":"info","message":"auth send jwt","requestID":"b6aaeefc97c38f7ec033ce845af981ed"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b6aaeefc97c38f7ec033ce845af981ed","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"b6aaeefc97c38f7ec033ce845af981ed"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1261,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1261,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.309533,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b6aaeefc97c38f7ec033ce845af981ed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931173,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3M30.e4eSlhyfsfeIt7ki3P6DAel3EV-DZBkmleGOuoAlK_U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b6aaeefc97c38f7ec033ce845af981ed","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf"},"level":"info","message":"Attempting to run experiment","requestID":"b6aaeefc97c38f7ec033ce845af981ed"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf"},"level":"info","message":"Attempting to book experiment","requestID":"b6aaeefc97c38f7ec033ce845af981ed"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf"},"level":"info","message":"Successfully booked experiment","requestID":"b6aaeefc97c38f7ec033ce845af981ed"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0af1cb80-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0af1f290-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1262,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1262,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.63172,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0af1cb80-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931173,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3M30.e4eSlhyfsfeIt7ki3P6DAel3EV-DZBkmleGOuoAlK_U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0af1cb80-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49796","level":"info","msg":"Received request.","req_id":1263,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"client_addr":"127.0.0.1:49796","level":"info","msg":"Sent response.","req_id":1263,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.662012,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0af1f290-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931173,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3M30.e4eSlhyfsfeIt7ki3P6DAel3EV-DZBkmleGOuoAlK_U"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"0af1f290-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47524fd1-11bb-43d5-aff1-9557edc3dab8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47524fd1-11bb-43d5-aff1-9557edc3dab8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:11.136016663Z"}]},"request_id":"4fa40743-0c9e-4f6d-af97-5e2414430410","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931173.444605} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0af1cb80-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F799cc7e1-4596-41f6-94f8-19b680a9020f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F799cc7e1-4596-41f6-94f8-19b680a9020f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:11.187224838Z"}]},"request_id":"9ea4e011-ce54-4b3f-8ac4-653164000ff2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931173.450063} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0af1f290-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0af1cb80-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/47524fd1-11bb-43d5-aff1-9557edc3dab8? 200 20ms","method":"GET","requestID":"0af1cb80-782b-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0af1f290-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/799cc7e1-4596-41f6-94f8-19b680a9020f? 200 23ms","method":"GET","requestID":"0af1f290-782b-11ef-88d4-5fea3f61bb98","responseTime":23,"status":200,"url":"/devices/799cc7e1-4596-41f6-94f8-19b680a9020f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf"},"level":"info","message":"Setting up experiment","requestID":"b6aaeefc97c38f7ec033ce845af981ed"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"b6aaeefc97c38f7ec033ce845af981ed"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf"},"level":"info","message":"Successfully locked booking for experiment","requestID":"b6aaeefc97c38f7ec033ce845af981ed"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"b6aaeefc97c38f7ec033ce845af981ed"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"b6aaeefc97c38f7ec033ce845af981ed"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf"},"level":"info","message":"Attempting to update booking for experiment","requestID":"b6aaeefc97c38f7ec033ce845af981ed"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf"},"level":"info","message":"Successfully updated booking for experiment","requestID":"b6aaeefc97c38f7ec033ce845af981ed"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf"},"level":"info","message":"Successfully set up experiment","requestID":"b6aaeefc97c38f7ec033ce845af981ed"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0afd8b50-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0afdd970-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0afe0080-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1264,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"client_addr":"127.0.0.1:49796","level":"info","msg":"Received request.","req_id":1265,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1264,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.00682,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:13Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf"},"level":"info","message":"Successfully running experiment","requestID":"b6aaeefc97c38f7ec033ce845af981ed"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0afd8b50-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931173,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3M30.e4eSlhyfsfeIt7ki3P6DAel3EV-DZBkmleGOuoAlK_U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0afd8b50-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49796","level":"info","msg":"Sent response.","req_id":1265,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.002834,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0afdd970-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931173,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3M30.e4eSlhyfsfeIt7ki3P6DAel3EV-DZBkmleGOuoAlK_U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0afdd970-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49802","level":"info","msg":"Received request.","req_id":1266,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F799cc7e1-4596-41f6-94f8-19b680a9020f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F799cc7e1-4596-41f6-94f8-19b680a9020f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:11.187224838Z"}]},"request_id":"ea11c98c-cce1-4fa5-9f63-05637e3e76dc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931173.5211914} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47524fd1-11bb-43d5-aff1-9557edc3dab8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a8d64757-2fd0-457e-a0fe-17ad81acae80","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931173.521924} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0afdd970-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47524fd1-11bb-43d5-aff1-9557edc3dab8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47524fd1-11bb-43d5-aff1-9557edc3dab8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:11.136016663Z"}]},"request_id":"4da8831b-9a88-46b4-a349-65cb3fd13163","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931173.5227013} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0afd8b50-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:49802","level":"info","msg":"Sent response.","req_id":1266,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.035931,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0afe0080-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"0afe0080-782b-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0afdd970-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/799cc7e1-4596-41f6-94f8-19b680a9020f? 200 16ms","method":"GET","requestID":"0afdd970-782b-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/799cc7e1-4596-41f6-94f8-19b680a9020f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0afd8b50-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/47524fd1-11bb-43d5-aff1-9557edc3dab8? 200 18ms","method":"GET","requestID":"0afd8b50-782b-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0afe0080-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/47524fd1-11bb-43d5-aff1-9557edc3dab8/signaling 200 16ms","method":"POST","requestID":"0afe0080-782b-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0b00bfa0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0b010dc0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"df3cad93-29e7-497d-aa54-738c22e1cabe","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931173.5332408} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b1419b55-8a9d-41c4-a0c2-f3b810ad50ab","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931173.5334966} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47524fd1-11bb-43d5-aff1-9557edc3dab8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1d26b134-f1e8-4a9d-ab1e-2a9a1269b72e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931173.5365024} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1267,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"client_addr":"127.0.0.1:49796","level":"info","msg":"Received request.","req_id":1268,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"b6aaeefc97c38f7ec033ce845af981ed","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1267,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.026661,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0b00bfa0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0b00bfa0-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49796","level":"info","msg":"Sent response.","req_id":1268,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.657499,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F799cc7e1-4596-41f6-94f8-19b680a9020f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"144aa87b-5747-4793-8834-962fd4f2c820","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931173.5381088} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0b010dc0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0b010dc0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0b00bfa0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/47524fd1-11bb-43d5-aff1-9557edc3dab8/signaling 200 13ms","method":"POST","requestID":"0b00bfa0-782b-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0b010dc0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/799cc7e1-4596-41f6-94f8-19b680a9020f/signaling 200 13ms","method":"POST","requestID":"0b010dc0-782b-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/799cc7e1-4596-41f6-94f8-19b680a9020f/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"b6aaeefc97c38f7ec033ce845af981ed"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0b0330a0-782b-11ef-88d4-5fea3f61bb98"} gateway-1 | {"time_local":"21/Sep/2024:15:06:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.163","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b6aaeefc97c38f7ec033ce845af981ed"} experiment-1 | {"level":"info","message":"POST /experiments? 201 158ms","method":"POST","requestID":"b6aaeefc97c38f7ec033ce845af981ed","responseTime":158,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1269,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:13Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3M30.e4eSlhyfsfeIt7ki3P6DAel3EV-DZBkmleGOuoAlK_U","level":"info","message":"auth send jwt","requestID":"c8bfab7041fa51de845f1b89682530ae"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c8bfab7041fa51de845f1b89682530ae","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c8bfab7041fa51de845f1b89682530ae"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F799cc7e1-4596-41f6-94f8-19b680a9020f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1798f624-cc49-4ced-bb74-b18af0b9e4f6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931173.5536273} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1269,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.678386,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"client_addr":"127.0.0.1:49796","level":"info","msg":"Received request.","req_id":1270,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0b0330a0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0b0330a0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49796","level":"info","msg":"Sent response.","req_id":1270,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.057745,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c8bfab7041fa51de845f1b89682530ae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931173,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3M30.e4eSlhyfsfeIt7ki3P6DAel3EV-DZBkmleGOuoAlK_U"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c8bfab7041fa51de845f1b89682530ae","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0b0330a0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/799cc7e1-4596-41f6-94f8-19b680a9020f/signaling 200 14ms","method":"POST","requestID":"0b0330a0-782b-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/799cc7e1-4596-41f6-94f8-19b680a9020f/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47524fd1-11bb-43d5-aff1-9557edc3dab8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47524fd1-11bb-43d5-aff1-9557edc3dab8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:11.136016663Z"}]},"request_id":"bb7aadab-64f6-4dac-9808-6441c1137009","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931173.5612452} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"b6aaeefc97c38f7ec033ce845af981ed"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c8bfab7041fa51de845f1b89682530ae","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0b05c8b0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0b05efc0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c8bfab7041fa51de845f1b89682530ae"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1271,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"client_addr":"127.0.0.1:49796","level":"info","msg":"Received request.","req_id":1272,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1271,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.891577,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:13Z"} gateway-1 | {"time_local":"21/Sep/2024:15:06:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/47524fd1-11bb-43d5-aff1-9557edc3dab8? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c8bfab7041fa51de845f1b89682530ae"} device-1 | {"level":"info","message":"GET /devices/47524fd1-11bb-43d5-aff1-9557edc3dab8? 200 14ms","method":"GET","requestID":"c8bfab7041fa51de845f1b89682530ae","responseTime":14,"status":200,"url":"/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0b05c8b0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931173,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3M30.e4eSlhyfsfeIt7ki3P6DAel3EV-DZBkmleGOuoAlK_U"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0b05c8b0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49796","level":"info","msg":"Sent response.","req_id":1272,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.383601,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0b05efc0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931173,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3M30.e4eSlhyfsfeIt7ki3P6DAel3EV-DZBkmleGOuoAlK_U"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0b05efc0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3M30.e4eSlhyfsfeIt7ki3P6DAel3EV-DZBkmleGOuoAlK_U","level":"info","message":"auth send jwt","requestID":"ba9d2efc7104302b72e0a9bfafa4fcf8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ba9d2efc7104302b72e0a9bfafa4fcf8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ba9d2efc7104302b72e0a9bfafa4fcf8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47524fd1-11bb-43d5-aff1-9557edc3dab8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47524fd1-11bb-43d5-aff1-9557edc3dab8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:11.136016663Z"}]},"request_id":"0223dc5a-076a-45c7-bc4c-8fcd967e32df","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931173.5717149} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0b05c8b0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F799cc7e1-4596-41f6-94f8-19b680a9020f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F799cc7e1-4596-41f6-94f8-19b680a9020f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:11.187224838Z"}]},"request_id":"f22ca28a-8f85-482d-975d-b478ec8a5f8a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931173.5726566} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0b05efc0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1273,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1273,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.790596,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:13Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0b05c8b0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ba9d2efc7104302b72e0a9bfafa4fcf8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931173,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3M30.e4eSlhyfsfeIt7ki3P6DAel3EV-DZBkmleGOuoAlK_U"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ba9d2efc7104302b72e0a9bfafa4fcf8","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/47524fd1-11bb-43d5-aff1-9557edc3dab8? 200 14ms","method":"GET","requestID":"0b05c8b0-782b-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0b05efc0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/799cc7e1-4596-41f6-94f8-19b680a9020f? 200 14ms","method":"GET","requestID":"0b05efc0-782b-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/799cc7e1-4596-41f6-94f8-19b680a9020f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf"},"level":"info","message":"Building connection plan","requestID":"b6aaeefc97c38f7ec033ce845af981ed"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"f6a9f05c-2b0f-4163-a8e6-6e436f08baee"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"59241762-91e5-451c-baab-600892c84ba9"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"98fc3a86-6a11-4561-a1b4-94ba95cc2364"}]},"level":"info","message":"Built pairwise service configurations","requestID":"b6aaeefc97c38f7ec033ce845af981ed"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"b6aaeefc97c38f7ec033ce845af981ed"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"0b0860c0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F799cc7e1-4596-41f6-94f8-19b680a9020f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F799cc7e1-4596-41f6-94f8-19b680a9020f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:11.187224838Z"}]},"request_id":"a76d9b93-da54-42ca-8e93-4c1e2c1c8ca2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931173.581344} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ba9d2efc7104302b72e0a9bfafa4fcf8","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1274,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1274,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.67445,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0b0860c0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931173,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3M30.e4eSlhyfsfeIt7ki3P6DAel3EV-DZBkmleGOuoAlK_U"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0b0860c0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ba9d2efc7104302b72e0a9bfafa4fcf8"} gateway-1 | {"time_local":"21/Sep/2024:15:06:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/799cc7e1-4596-41f6-94f8-19b680a9020f? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ba9d2efc7104302b72e0a9bfafa4fcf8"} device-1 | {"level":"info","message":"GET /devices/799cc7e1-4596-41f6-94f8-19b680a9020f? 200 15ms","method":"GET","requestID":"ba9d2efc7104302b72e0a9bfafa4fcf8","responseTime":15,"status":200,"url":"/devices/799cc7e1-4596-41f6-94f8-19b680a9020f?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"65e88e48-99d6-4d4e-b369-6fd0ca26cb56","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931173.5910618} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"27b3155f-dc79-4757-9456-d5fdc0155f61","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931173.5919056} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"0b0860c0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"0b0860c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"0b0860c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/18066ba3-284a-47a2-b2eb-f6280adb71d0'","requestID":"0b0860c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/18066ba3-284a-47a2-b2eb-f6280adb71d0'","requestID":"0b0860c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"0b0860c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 23ms","method":"POST","requestID":"0b0860c0-782b-11ef-88d4-5fea3f61bb98","responseTime":23,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"0b0860c0-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"b6aaeefc97c38f7ec033ce845af981ed"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0b1028f0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1275,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47524fd1-11bb-43d5-aff1-9557edc3dab8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"546b1c87-01df-4a01-80b0-8ee1afa02fa7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931173.6352916} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1275,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.344665,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0b1028f0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0b1028f0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0b1028f0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/47524fd1-11bb-43d5-aff1-9557edc3dab8/signaling 200 8ms","method":"POST","requestID":"0b1028f0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0b118880-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1276,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F799cc7e1-4596-41f6-94f8-19b680a9020f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3689032e-d409-42f1-87f6-a677d94b88d3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931173.6449049} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1276,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.356169,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0b118880-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0b118880-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0b118880-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/799cc7e1-4596-41f6-94f8-19b680a9020f/signaling 200 8ms","method":"POST","requestID":"0b118880-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/799cc7e1-4596-41f6-94f8-19b680a9020f/signaling"} device-1 | {"device":"799cc7e1-4596-41f6-94f8-19b680a9020f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"799cc7e1-4596-41f6-94f8-19b680a9020f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"47524fd1-11bb-43d5-aff1-9557edc3dab8","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"18066ba3-284a-47a2-b2eb-f6280adb71d0","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 1521327070607821200 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=msid-semantic: WMS\r\nm=application 9 DTLS/SCTP 5000\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:EwGB\r\na=ice-pwd:l32BpzLcnPFIHFqayqRnlzQA\r\na=ice-options:trickle\r\na=fingerprint:sha-256 2A:05:3F:C2:74:28:34:16:DD:1B:0F:FE:AE:FB:A8:FC:30:E7:45:C6:9A:0F:D0:1B:06:50:A8:7E:C6:E6:00:5F\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"799cc7e1-4596-41f6-94f8-19b680a9020f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1101432174 1 udp 2113937151 584f81db-2862-4765-b38a-44ee38236398.local 36710 typ host generation 0 ufrag EwGB network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"799cc7e1-4596-41f6-94f8-19b680a9020f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"799cc7e1-4596-41f6-94f8-19b680a9020f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:3314282257 1 udp 1677729535 141.24.211.56 36710 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag EwGB network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"799cc7e1-4596-41f6-94f8-19b680a9020f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f'"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/18066ba3-284a-47a2-b2eb-f6280adb71d0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"18066ba3-284a-47a2-b2eb-f6280adb71d0","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"799cc7e1-4596-41f6-94f8-19b680a9020f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"36bcef4ba3a5cb6d18bb77be71e986b2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} device-1 | {"device":"47524fd1-11bb-43d5-aff1-9557edc3dab8","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"47524fd1-11bb-43d5-aff1-9557edc3dab8","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"47524fd1-11bb-43d5-aff1-9557edc3dab8","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"36bcef4ba3a5cb6d18bb77be71e986b2","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/18066ba3-284a-47a2-b2eb-f6280adb71d0"}}},"level":"info","message":"received a callback","requestID":"36bcef4ba3a5cb6d18bb77be71e986b2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 4ms","method":"POST","requestID":"36bcef4ba3a5cb6d18bb77be71e986b2","responseTime":4,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"36bcef4ba3a5cb6d18bb77be71e986b2"} device-1 | {"data":{"peerconnection":"18066ba3-284a-47a2-b2eb-f6280adb71d0","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"47524fd1-11bb-43d5-aff1-9557edc3dab8","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"799cc7e1-4596-41f6-94f8-19b680a9020f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"47524fd1-11bb-43d5-aff1-9557edc3dab8","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"18066ba3-284a-47a2-b2eb-f6280adb71d0","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"799cc7e1-4596-41f6-94f8-19b680a9020f","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/18066ba3-284a-47a2-b2eb-f6280adb71d0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"18066ba3-284a-47a2-b2eb-f6280adb71d0","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"66235516d7d56e1ff96be3a849ffa622","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"66235516d7d56e1ff96be3a849ffa622","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/18066ba3-284a-47a2-b2eb-f6280adb71d0"}}},"level":"info","message":"received a callback","requestID":"66235516d7d56e1ff96be3a849ffa622"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"0c4e4e40-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1277,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:15Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F18066ba3-284a-47a2-b2eb-f6280adb71d0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cb65bc78-1642-4b1e-be16-c56b3d584f92","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931175.721394} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1277,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.825257,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/18066ba3-284a-47a2-b2eb-f6280adb71d0","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0c4e4e40-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/18066ba3-284a-47a2-b2eb-f6280adb71d0","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0c4e4e40-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"0c4e4e40-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/18066ba3-284a-47a2-b2eb-f6280adb71d0 200 9ms","method":"GET","requestID":"0c4e4e40-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/peerconnections/18066ba3-284a-47a2-b2eb-f6280adb71d0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 41ms","method":"POST","requestID":"66235516d7d56e1ff96be3a849ffa622","responseTime":41,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch","requestID":"66235516d7d56e1ff96be3a849ffa622"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0c53cc80-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1278,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:15Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F799cc7e1-4596-41f6-94f8-19b680a9020f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e7c745a8-cd0c-4171-83dd-bab515c720b1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931175.7566116} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1278,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.325084,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0c53cc80-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0c53cc80-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0c53cc80-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/799cc7e1-4596-41f6-94f8-19b680a9020f/signaling 200 9ms","method":"POST","requestID":"0c53cc80-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/799cc7e1-4596-41f6-94f8-19b680a9020f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0c557a30-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1279,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:15Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47524fd1-11bb-43d5-aff1-9557edc3dab8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a5c65637-9023-471d-a180-864ab93cf9d4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931175.7674706} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1279,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.614187,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0c557a30-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0c557a30-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0c557a30-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/47524fd1-11bb-43d5-aff1-9557edc3dab8/signaling 200 8ms","method":"POST","requestID":"0c557a30-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3NX0.ozNZAVgyV_R_KgWY0yF4xeDkj1Y508dkP_aYI_PYQPY","level":"info","message":"auth send jwt","requestID":"784d1ce47aef21c8843ef735e78bf1ad"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"784d1ce47aef21c8843ef735e78bf1ad","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf","requestID":"784d1ce47aef21c8843ef735e78bf1ad"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1280,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:15Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1280,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.307726,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"784d1ce47aef21c8843ef735e78bf1ad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931175,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3NX0.ozNZAVgyV_R_KgWY0yF4xeDkj1Y508dkP_aYI_PYQPY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"784d1ce47aef21c8843ef735e78bf1ad","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf","requestID":"784d1ce47aef21c8843ef735e78bf1ad"} gateway-1 | {"time_local":"21/Sep/2024:15:06:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"784d1ce47aef21c8843ef735e78bf1ad"} experiment-1 | {"level":"info","message":"GET /experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf 200 18ms","method":"GET","requestID":"784d1ce47aef21c8843ef735e78bf1ad","responseTime":18,"status":200,"url":"/experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3NX0.ozNZAVgyV_R_KgWY0yF4xeDkj1Y508dkP_aYI_PYQPY","level":"info","message":"auth send jwt","requestID":"5471224876b999cf25640248db41fd68"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5471224876b999cf25640248db41fd68","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf","requestID":"5471224876b999cf25640248db41fd68"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1281,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:15Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1281,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.221506,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:15Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"5471224876b999cf25640248db41fd68","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931175,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3NX0.ozNZAVgyV_R_KgWY0yF4xeDkj1Y508dkP_aYI_PYQPY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5471224876b999cf25640248db41fd68","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf"},"level":"info","message":"Attempting to finish experiment","requestID":"5471224876b999cf25640248db41fd68"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"0c630ec0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1282,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:15Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1282,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.247847,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:15Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/18066ba3-284a-47a2-b2eb-f6280adb71d0","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0c630ec0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/18066ba3-284a-47a2-b2eb-f6280adb71d0","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931175,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3NX0.ozNZAVgyV_R_KgWY0yF4xeDkj1Y508dkP_aYI_PYQPY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0c630ec0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/18066ba3-284a-47a2-b2eb-f6280adb71d0","device":"799cc7e1-4596-41f6-94f8-19b680a9020f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"47524fd1-11bb-43d5-aff1-9557edc3dab8","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"47524fd1-11bb-43d5-aff1-9557edc3dab8","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"47524fd1-11bb-43d5-aff1-9557edc3dab8","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/18066ba3-284a-47a2-b2eb-f6280adb71d0' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/18066ba3-284a-47a2-b2eb-f6280adb71d0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"18066ba3-284a-47a2-b2eb-f6280adb71d0","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F18066ba3-284a-47a2-b2eb-f6280adb71d0': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F18066ba3-284a-47a2-b2eb-f6280adb71d0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"6e068772-4ee1-4634-8e53-cbf812f35cc0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931175.8770244} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"34a018ab-0955-450c-96a0-319daf90d692","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931175.8775716} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1de90b8efd93eca7b53b5f740478fb2d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"0c630ec0-782b-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1de90b8efd93eca7b53b5f740478fb2d","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/18066ba3-284a-47a2-b2eb-f6280adb71d0"}}},"level":"info","message":"received a callback","requestID":"1de90b8efd93eca7b53b5f740478fb2d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9472440858f6df77bb4bddf21665a725","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9472440858f6df77bb4bddf21665a725","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/18066ba3-284a-47a2-b2eb-f6280adb71d0"}}},"level":"info","message":"received a callback","requestID":"9472440858f6df77bb4bddf21665a725"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"0c630ec0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/18066ba3-284a-47a2-b2eb-f6280adb71d0 204 49ms","method":"DELETE","requestID":"0c630ec0-782b-11ef-88d4-5fea3f61bb98","responseTime":49,"status":204,"url":"/peerconnections/18066ba3-284a-47a2-b2eb-f6280adb71d0"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf"},"level":"info","message":"Successfully finished experiment","requestID":"5471224876b999cf25640248db41fd68"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0c6d20e0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1283,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:15Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F799cc7e1-4596-41f6-94f8-19b680a9020f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2423f2ea-a904-4ff3-8347-5629857108fe","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931175.9231508} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1283,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.313873,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0c6d20e0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0c6d20e0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0c6d20e0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/799cc7e1-4596-41f6-94f8-19b680a9020f/signaling 200 10ms","method":"POST","requestID":"0c6d20e0-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/799cc7e1-4596-41f6-94f8-19b680a9020f/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"33d90915-6279-4182-add4-1ba1c8d6586d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931175.9294426} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c9d22069-1fe0-4eb3-9e3b-807885ae2f16","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931175.9294877} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0c6ef5a0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"5471224876b999cf25640248db41fd68","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1284,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:15Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47524fd1-11bb-43d5-aff1-9557edc3dab8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"629a5704-46ce-484e-9fbb-8b23c15e267f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931175.9349763} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1284,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.137627,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0c6ef5a0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0c6ef5a0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0c6ef5a0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/47524fd1-11bb-43d5-aff1-9557edc3dab8/signaling 200 10ms","method":"POST","requestID":"0c6ef5a0-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf","requestID":"5471224876b999cf25640248db41fd68"} gateway-1 | {"time_local":"21/Sep/2024:15:06:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.173","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5471224876b999cf25640248db41fd68"} experiment-1 | {"level":"info","message":"DELETE /experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf 204 167ms","method":"DELETE","requestID":"5471224876b999cf25640248db41fd68","responseTime":167,"status":204,"url":"/experiments/3b1b9bc9-5e37-4a29-b0b6-55f3258e04cf"} gateway-1 | {"time_local":"21/Sep/2024:15:06:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3233","request_time":"4.279","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"4e355a45b9607fc020f10c5e430488f5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 124ms","method":"POST","requestID":"1de90b8efd93eca7b53b5f740478fb2d","responseTime":124,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.129","http_referrer":"","http_user_agent":"node-fetch","requestID":"1de90b8efd93eca7b53b5f740478fb2d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 124ms","method":"POST","requestID":"9472440858f6df77bb4bddf21665a725","responseTime":124,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.131","http_referrer":"","http_user_agent":"node-fetch","requestID":"9472440858f6df77bb4bddf21665a725"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3Nn0.KNzGagjnrQz93jxaVGJ1VSaxef_atxkwy--mXi4WsPM","level":"info","message":"auth send jwt","requestID":"317fd43ea207d2a942bf5ae9c5782658"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"317fd43ea207d2a942bf5ae9c5782658","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"317fd43ea207d2a942bf5ae9c5782658"} gateway-1 | {"time_local":"21/Sep/2024:15:06:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3092","request_time":"2.767","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"49a30462ed582264fb9438d6743a9e45"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1285,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:16Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1285,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.077429,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"317fd43ea207d2a942bf5ae9c5782658","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931176,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3Nn0.KNzGagjnrQz93jxaVGJ1VSaxef_atxkwy--mXi4WsPM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"317fd43ea207d2a942bf5ae9c5782658","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/47524fd1-11bb-43d5-aff1-9557edc3dab8' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa33e08a4-b5d4-4189-91b3-b18f4cbddd0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f6c3d8a4-aaa2-46fc-95fe-45cd1ed83cd3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931176.0331943} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"317fd43ea207d2a942bf5ae9c5782658","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/799cc7e1-4596-41f6-94f8-19b680a9020f' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8e0d3ff7-4f0d-46f1-8ef1-a8cfdf0886da","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931176.0378683} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"317fd43ea207d2a942bf5ae9c5782658","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa33e08a4-b5d4-4189-91b3-b18f4cbddd0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"73779fd4-672e-46d4-b595-514feb41dd2d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931176.0533674} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e70b7428-a38a-4e4b-9f14-ae0ab614bdf2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931176.0534537} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"317fd43ea207d2a942bf5ae9c5782658","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa33e08a4-b5d4-4189-91b3-b18f4cbddd0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa33e08a4-b5d4-4189-91b3-b18f4cbddd0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:16.053329634Z"}]},"request_id":"bb0e9898-d97f-4236-bb5b-dddf25f67448","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931176.057688} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"317fd43ea207d2a942bf5ae9c5782658","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"317fd43ea207d2a942bf5ae9c5782658"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"317fd43ea207d2a942bf5ae9c5782658","responseTime":48,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"317fd43ea207d2a942bf5ae9c5782658"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3Nn0.KNzGagjnrQz93jxaVGJ1VSaxef_atxkwy--mXi4WsPM","level":"info","message":"auth send jwt","requestID":"054cd6a848afd62e1e3843da305913fa"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"054cd6a848afd62e1e3843da305913fa","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"054cd6a848afd62e1e3843da305913fa"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1286,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:16Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1286,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.831766,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"054cd6a848afd62e1e3843da305913fa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931176,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3Nn0.KNzGagjnrQz93jxaVGJ1VSaxef_atxkwy--mXi4WsPM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"054cd6a848afd62e1e3843da305913fa","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb63357d2-95e7-45ff-abde-4e63dcb9167a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"dece4698-1a13-4c0c-a5e4-eb7bf96c8d23","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931176.0832925} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"054cd6a848afd62e1e3843da305913fa","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1c037fe8-3a60-4fd9-99a9-3ee4c02814a5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931176.0874631} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"054cd6a848afd62e1e3843da305913fa","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb63357d2-95e7-45ff-abde-4e63dcb9167a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"3397d662-2425-410b-a1ab-564394a2d4fa","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931176.0972295} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4b6523f4-16c1-40c0-8370-1b3135557da0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931176.0974736} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"054cd6a848afd62e1e3843da305913fa","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb63357d2-95e7-45ff-abde-4e63dcb9167a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb63357d2-95e7-45ff-abde-4e63dcb9167a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:16.097173031Z"}]},"request_id":"bfb311cc-af55-416d-8fb2-82d817a2de3f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931176.106592} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"054cd6a848afd62e1e3843da305913fa","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"054cd6a848afd62e1e3843da305913fa"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"054cd6a848afd62e1e3843da305913fa","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"054cd6a848afd62e1e3843da305913fa"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3Nn0.KNzGagjnrQz93jxaVGJ1VSaxef_atxkwy--mXi4WsPM","level":"info","message":"auth send jwt","requestID":"4cc668d1b75451d16c0b4fd635c67f44"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4cc668d1b75451d16c0b4fd635c67f44","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4cc668d1b75451d16c0b4fd635c67f44"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1287,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:16Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1287,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.915849,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:16Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"4cc668d1b75451d16c0b4fd635c67f44","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931176,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3Nn0.KNzGagjnrQz93jxaVGJ1VSaxef_atxkwy--mXi4WsPM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4cc668d1b75451d16c0b4fd635c67f44","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa33e08a4-b5d4-4189-91b3-b18f4cbddd0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa33e08a4-b5d4-4189-91b3-b18f4cbddd0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:16.053329634Z"}]},"request_id":"97b95b2e-23f6-491c-9675-a3b3300a78c0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931176.5991926} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4cc668d1b75451d16c0b4fd635c67f44","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7d22dbbd-6f9b-45ad-a4c5-04929df272a9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931176.6045313} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"4cc668d1b75451d16c0b4fd635c67f44","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa33e08a4-b5d4-4189-91b3-b18f4cbddd0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa33e08a4-b5d4-4189-91b3-b18f4cbddd0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:16.053329634Z"}]},"request_id":"43d2b096-43a3-49fd-9873-543349eb7241","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931176.6161993} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4cc668d1b75451d16c0b4fd635c67f44","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4cc668d1b75451d16c0b4fd635c67f44"} gateway-1 | {"time_local":"21/Sep/2024:15:06:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.034","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"4cc668d1b75451d16c0b4fd635c67f44"} device-1 | {"level":"info","message":"PATCH /devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d 200 30ms","method":"PATCH","requestID":"4cc668d1b75451d16c0b4fd635c67f44","responseTime":30,"status":200,"url":"/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3Nn0.KNzGagjnrQz93jxaVGJ1VSaxef_atxkwy--mXi4WsPM","level":"info","message":"auth send jwt","requestID":"a12a7969cb94df2b9619867a13c6f0cb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a12a7969cb94df2b9619867a13c6f0cb","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a12a7969cb94df2b9619867a13c6f0cb"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1288,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:16Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1288,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.1981,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:16Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a12a7969cb94df2b9619867a13c6f0cb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931176,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3Nn0.KNzGagjnrQz93jxaVGJ1VSaxef_atxkwy--mXi4WsPM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a12a7969cb94df2b9619867a13c6f0cb","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a12a7969cb94df2b9619867a13c6f0cb"} gateway-1 | {"time_local":"21/Sep/2024:15:06:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.019","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"a12a7969cb94df2b9619867a13c6f0cb"} device-1 | {"level":"info","message":"POST /devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d/websocket 200 15ms","method":"POST","requestID":"a12a7969cb94df2b9619867a13c6f0cb","responseTime":15,"status":200,"url":"/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a82abaa7b681252747e19dcc7bbd7ed1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a82abaa7b681252747e19dcc7bbd7ed1","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b63357d2-95e7-45ff-abde-4e63dcb9167a/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a82abaa7b681252747e19dcc7bbd7ed1"} device-1 | {"level":"info","message":"OPTIONS /devices/b63357d2-95e7-45ff-abde-4e63dcb9167a/websocket 200 1ms","method":"OPTIONS","requestID":"a82abaa7b681252747e19dcc7bbd7ed1","responseTime":1,"status":200,"url":"/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3OH0.pfAbHTCF4LnOdrbw88bu3DrJLoDMXtbfDd7pGZnwHP8","level":"info","message":"auth send jwt","requestID":"666080158a4011d0ffdf49c51393e058"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"666080158a4011d0ffdf49c51393e058","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"666080158a4011d0ffdf49c51393e058"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1289,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1289,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.247929,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"666080158a4011d0ffdf49c51393e058","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931178,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3OH0.pfAbHTCF4LnOdrbw88bu3DrJLoDMXtbfDd7pGZnwHP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"666080158a4011d0ffdf49c51393e058","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"666080158a4011d0ffdf49c51393e058"} device-1 | {"level":"info","message":"POST /devices/b63357d2-95e7-45ff-abde-4e63dcb9167a/websocket 200 22ms","method":"POST","requestID":"666080158a4011d0ffdf49c51393e058","responseTime":22,"status":200,"url":"/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:06:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b63357d2-95e7-45ff-abde-4e63dcb9167a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"666080158a4011d0ffdf49c51393e058"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"899cf44a731ea1722748a86534e47ce9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"899cf44a731ea1722748a86534e47ce9","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b63357d2-95e7-45ff-abde-4e63dcb9167a? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"899cf44a731ea1722748a86534e47ce9"} device-1 | {"level":"info","message":"OPTIONS /devices/b63357d2-95e7-45ff-abde-4e63dcb9167a? 200 1ms","method":"OPTIONS","requestID":"899cf44a731ea1722748a86534e47ce9","responseTime":1,"status":200,"url":"/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3OH0.pfAbHTCF4LnOdrbw88bu3DrJLoDMXtbfDd7pGZnwHP8","level":"info","message":"auth send jwt","requestID":"c3e6df6915ccb8f78711ac13cf782bc3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c3e6df6915ccb8f78711ac13cf782bc3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c3e6df6915ccb8f78711ac13cf782bc3"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1290,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1290,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.714016,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c3e6df6915ccb8f78711ac13cf782bc3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931178,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3OH0.pfAbHTCF4LnOdrbw88bu3DrJLoDMXtbfDd7pGZnwHP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c3e6df6915ccb8f78711ac13cf782bc3","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb63357d2-95e7-45ff-abde-4e63dcb9167a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb63357d2-95e7-45ff-abde-4e63dcb9167a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:16.097173031Z"}]},"request_id":"81a10503-d2b3-4dbf-944e-6e50296e9a29","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931178.209819} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c3e6df6915ccb8f78711ac13cf782bc3","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b4c31bde-da12-4d54-8113-0ea14b94f64d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931178.217} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c3e6df6915ccb8f78711ac13cf782bc3","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb63357d2-95e7-45ff-abde-4e63dcb9167a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb63357d2-95e7-45ff-abde-4e63dcb9167a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:16.097173031Z"}]},"request_id":"87b69c88-00e7-43b1-87de-2cbd71c946f2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931178.229841} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c3e6df6915ccb8f78711ac13cf782bc3","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c3e6df6915ccb8f78711ac13cf782bc3"} device-1 | {"level":"info","message":"PATCH /devices/b63357d2-95e7-45ff-abde-4e63dcb9167a? 200 37ms","method":"PATCH","requestID":"c3e6df6915ccb8f78711ac13cf782bc3","responseTime":37,"status":200,"url":"/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b63357d2-95e7-45ff-abde-4e63dcb9167a? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.043","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c3e6df6915ccb8f78711ac13cf782bc3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3OH0.pfAbHTCF4LnOdrbw88bu3DrJLoDMXtbfDd7pGZnwHP8","level":"info","message":"auth send jwt","requestID":"d8d7c23191034ceea8fc01914ccc1b76"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d8d7c23191034ceea8fc01914ccc1b76","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d8d7c23191034ceea8fc01914ccc1b76"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1291,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1291,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.350898,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d8d7c23191034ceea8fc01914ccc1b76","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931178,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3OH0.pfAbHTCF4LnOdrbw88bu3DrJLoDMXtbfDd7pGZnwHP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d8d7c23191034ceea8fc01914ccc1b76","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa33e08a4-b5d4-4189-91b3-b18f4cbddd0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa33e08a4-b5d4-4189-91b3-b18f4cbddd0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:16.053329634Z"}]},"request_id":"490a4180-31bb-404c-a28c-cde8efb03adc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931178.2580895} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d8d7c23191034ceea8fc01914ccc1b76","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d8d7c23191034ceea8fc01914ccc1b76"} gateway-1 | {"time_local":"21/Sep/2024:15:06:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d8d7c23191034ceea8fc01914ccc1b76"} device-1 | {"level":"info","message":"GET /devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d? 200 17ms","method":"GET","requestID":"d8d7c23191034ceea8fc01914ccc1b76","responseTime":17,"status":200,"url":"/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3OH0.pfAbHTCF4LnOdrbw88bu3DrJLoDMXtbfDd7pGZnwHP8","level":"info","message":"auth send jwt","requestID":"d7df883e3c41821a831cd6effab6f5b1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d7df883e3c41821a831cd6effab6f5b1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d7df883e3c41821a831cd6effab6f5b1"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1292,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1292,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.912903,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d7df883e3c41821a831cd6effab6f5b1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931178,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3OH0.pfAbHTCF4LnOdrbw88bu3DrJLoDMXtbfDd7pGZnwHP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d7df883e3c41821a831cd6effab6f5b1","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb63357d2-95e7-45ff-abde-4e63dcb9167a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb63357d2-95e7-45ff-abde-4e63dcb9167a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:16.097173031Z"}]},"request_id":"1dc5501e-3ffc-4ea4-83ef-f7a5c7a3a687","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931178.282142} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d7df883e3c41821a831cd6effab6f5b1","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d7df883e3c41821a831cd6effab6f5b1"} gateway-1 | {"time_local":"21/Sep/2024:15:06:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b63357d2-95e7-45ff-abde-4e63dcb9167a? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d7df883e3c41821a831cd6effab6f5b1"} device-1 | {"level":"info","message":"GET /devices/b63357d2-95e7-45ff-abde-4e63dcb9167a? 200 16ms","method":"GET","requestID":"d7df883e3c41821a831cd6effab6f5b1","responseTime":16,"status":200,"url":"/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3OH0.pfAbHTCF4LnOdrbw88bu3DrJLoDMXtbfDd7pGZnwHP8","level":"info","message":"auth send jwt","requestID":"d10649b99dd7c7e5b3f9c77df0b7168b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d10649b99dd7c7e5b3f9c77df0b7168b","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"d10649b99dd7c7e5b3f9c77df0b7168b"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1293,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1293,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.243942,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d10649b99dd7c7e5b3f9c77df0b7168b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931178,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3OH0.pfAbHTCF4LnOdrbw88bu3DrJLoDMXtbfDd7pGZnwHP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d10649b99dd7c7e5b3f9c77df0b7168b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b"},"level":"info","message":"Attempting to run experiment","requestID":"d10649b99dd7c7e5b3f9c77df0b7168b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b"},"level":"info","message":"Attempting to book experiment","requestID":"d10649b99dd7c7e5b3f9c77df0b7168b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b"},"level":"info","message":"Successfully booked experiment","requestID":"d10649b99dd7c7e5b3f9c77df0b7168b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0dddeef0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0dde3d10-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1294,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1294,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.058228,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0dddeef0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931178,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3OH0.pfAbHTCF4LnOdrbw88bu3DrJLoDMXtbfDd7pGZnwHP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0dddeef0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Received request.","req_id":1295,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Sent response.","req_id":1295,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.087345,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0dde3d10-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931178,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3OH0.pfAbHTCF4LnOdrbw88bu3DrJLoDMXtbfDd7pGZnwHP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"0dde3d10-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa33e08a4-b5d4-4189-91b3-b18f4cbddd0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa33e08a4-b5d4-4189-91b3-b18f4cbddd0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:16.053329634Z"}]},"request_id":"199d0c87-d002-4857-8346-e57ace0dde61","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931178.3466597} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0dddeef0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb63357d2-95e7-45ff-abde-4e63dcb9167a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb63357d2-95e7-45ff-abde-4e63dcb9167a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:16.097173031Z"}]},"request_id":"6da5e897-a8f1-4730-8dfc-22a27f202005","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931178.3522322} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0dde3d10-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0dddeef0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d? 200 22ms","method":"GET","requestID":"0dddeef0-782b-11ef-88d4-5fea3f61bb98","responseTime":22,"status":200,"url":"/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0dde3d10-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/b63357d2-95e7-45ff-abde-4e63dcb9167a? 200 24ms","method":"GET","requestID":"0dde3d10-782b-11ef-88d4-5fea3f61bb98","responseTime":24,"status":200,"url":"/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b"},"level":"info","message":"Setting up experiment","requestID":"d10649b99dd7c7e5b3f9c77df0b7168b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"d10649b99dd7c7e5b3f9c77df0b7168b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b"},"level":"info","message":"Successfully locked booking for experiment","requestID":"d10649b99dd7c7e5b3f9c77df0b7168b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"d10649b99dd7c7e5b3f9c77df0b7168b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"d10649b99dd7c7e5b3f9c77df0b7168b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b"},"level":"info","message":"Attempting to update booking for experiment","requestID":"d10649b99dd7c7e5b3f9c77df0b7168b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b"},"level":"info","message":"Successfully updated booking for experiment","requestID":"d10649b99dd7c7e5b3f9c77df0b7168b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b"},"level":"info","message":"Successfully set up experiment","requestID":"d10649b99dd7c7e5b3f9c77df0b7168b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0de987b0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0de9d5d0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0dea23f0-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b"},"level":"info","message":"Successfully running experiment","requestID":"d10649b99dd7c7e5b3f9c77df0b7168b"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1296,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1296,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.345702,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Received request.","req_id":1297,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0de987b0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931178,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3OH0.pfAbHTCF4LnOdrbw88bu3DrJLoDMXtbfDd7pGZnwHP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0de987b0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Sent response.","req_id":1297,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.332414,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0de9d5d0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931178,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3OH0.pfAbHTCF4LnOdrbw88bu3DrJLoDMXtbfDd7pGZnwHP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"0de9d5d0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1298,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa33e08a4-b5d4-4189-91b3-b18f4cbddd0d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f0a174fe-722b-4e5a-8cc6-4040720deacf","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931178.4231224} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1298,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.346742,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0dea23f0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0dea23f0-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0dea23f0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d/signaling 200 15ms","method":"POST","requestID":"0dea23f0-782b-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa33e08a4-b5d4-4189-91b3-b18f4cbddd0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa33e08a4-b5d4-4189-91b3-b18f4cbddd0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:16.053329634Z"}]},"request_id":"784c9d8a-43cc-4d4c-9a51-628691ed2c9d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931178.429563} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0de987b0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb63357d2-95e7-45ff-abde-4e63dcb9167a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb63357d2-95e7-45ff-abde-4e63dcb9167a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:16.097173031Z"}]},"request_id":"49b7b4af-8ffd-4e36-ace2-a0d1ae9485d4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931178.4311702} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0de9d5d0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0ded0a20-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1299,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:18Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0de987b0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d? 200 27ms","method":"GET","requestID":"0de987b0-782b-11ef-88d4-5fea3f61bb98","responseTime":27,"status":200,"url":"/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0de9d5d0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/b63357d2-95e7-45ff-abde-4e63dcb9167a? 200 26ms","method":"GET","requestID":"0de9d5d0-782b-11ef-88d4-5fea3f61bb98","responseTime":26,"status":200,"url":"/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff92182c6-b7a3-4ba5-a2fd-fbf49c3e717b#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff92182c6-b7a3-4ba5-a2fd-fbf49c3e717b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"1aa8fc20-f53b-4a15-a45b-2c9cd86cfc2b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931178.4413536} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb63357d2-95e7-45ff-abde-4e63dcb9167a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"effbfaf3-b1c8-47f7-be69-40dd5988a140","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931178.4414003} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0dee42a0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"581012aa-8e18-4ecd-b910-118736b66c14","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931178.4419103} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1299,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.604083,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0ded0a20-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"0ded0a20-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"d10649b99dd7c7e5b3f9c77df0b7168b","responseTime":26,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1300,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:18Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0ded0a20-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/b63357d2-95e7-45ff-abde-4e63dcb9167a/signaling 200 17ms","method":"POST","requestID":"0ded0a20-782b-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa33e08a4-b5d4-4189-91b3-b18f4cbddd0d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fe33798c-3620-4acd-aaaf-fd1e58911967","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931178.4512293} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1300,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.369958,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0dee42a0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0dee42a0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"d10649b99dd7c7e5b3f9c77df0b7168b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0dee42a0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d/signaling 200 14ms","method":"POST","requestID":"0dee42a0-782b-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d/signaling"} experiment-1 | {"level":"info","message":"POST /experiments? 201 160ms","method":"POST","requestID":"d10649b99dd7c7e5b3f9c77df0b7168b","responseTime":160,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.167","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d10649b99dd7c7e5b3f9c77df0b7168b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0df0dab0-782b-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3OH0.pfAbHTCF4LnOdrbw88bu3DrJLoDMXtbfDd7pGZnwHP8","level":"info","message":"auth send jwt","requestID":"8022b8674b6d5afbbed995d0f7c623a0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8022b8674b6d5afbbed995d0f7c623a0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8022b8674b6d5afbbed995d0f7c623a0"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1301,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb63357d2-95e7-45ff-abde-4e63dcb9167a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"51a9b22f-533d-497e-a0ba-e5f861d0575a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931178.4653182} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Received request.","req_id":1302,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1301,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.055576,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0df0dab0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0df0dab0-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Sent response.","req_id":1302,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.181652,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"8022b8674b6d5afbbed995d0f7c623a0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931178,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3OH0.pfAbHTCF4LnOdrbw88bu3DrJLoDMXtbfDd7pGZnwHP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8022b8674b6d5afbbed995d0f7c623a0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0df0dab0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/b63357d2-95e7-45ff-abde-4e63dcb9167a/signaling 200 12ms","method":"POST","requestID":"0df0dab0-782b-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"d10649b99dd7c7e5b3f9c77df0b7168b"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa33e08a4-b5d4-4189-91b3-b18f4cbddd0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa33e08a4-b5d4-4189-91b3-b18f4cbddd0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:16.053329634Z"}]},"request_id":"0b043d6d-79a4-4968-9c13-faac66b76081","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931178.4740286} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0df324a0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"8022b8674b6d5afbbed995d0f7c623a0","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0df372c0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1303,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1303,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.790366,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Received request.","req_id":1304,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0df324a0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931178,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3OH0.pfAbHTCF4LnOdrbw88bu3DrJLoDMXtbfDd7pGZnwHP8"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8022b8674b6d5afbbed995d0f7c623a0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0df324a0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:06:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8022b8674b6d5afbbed995d0f7c623a0"} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Sent response.","req_id":1304,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.819886,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:18Z"} device-1 | {"level":"info","message":"GET /devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d? 200 18ms","method":"GET","requestID":"8022b8674b6d5afbbed995d0f7c623a0","responseTime":18,"status":200,"url":"/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0df372c0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931178,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3OH0.pfAbHTCF4LnOdrbw88bu3DrJLoDMXtbfDd7pGZnwHP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0df372c0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3OH0.pfAbHTCF4LnOdrbw88bu3DrJLoDMXtbfDd7pGZnwHP8","level":"info","message":"auth send jwt","requestID":"1831930a39fd3082494c5216e07cb9d7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1831930a39fd3082494c5216e07cb9d7","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa33e08a4-b5d4-4189-91b3-b18f4cbddd0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa33e08a4-b5d4-4189-91b3-b18f4cbddd0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:16.053329634Z"}]},"request_id":"203aa7d8-593b-440f-a14f-2303e16a87e0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931178.485408} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1831930a39fd3082494c5216e07cb9d7"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0df324a0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb63357d2-95e7-45ff-abde-4e63dcb9167a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb63357d2-95e7-45ff-abde-4e63dcb9167a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:16.097173031Z"}]},"request_id":"24dd8663-7d8a-471a-a0a1-0c09bbed0102","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931178.4862428} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0df372c0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1305,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1305,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.66227,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1831930a39fd3082494c5216e07cb9d7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931178,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3OH0.pfAbHTCF4LnOdrbw88bu3DrJLoDMXtbfDd7pGZnwHP8"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0df324a0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1831930a39fd3082494c5216e07cb9d7","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d? 200 17ms","method":"GET","requestID":"0df324a0-782b-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0df372c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/b63357d2-95e7-45ff-abde-4e63dcb9167a? 200 15ms","method":"GET","requestID":"0df372c0-782b-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b"},"level":"info","message":"Building connection plan","requestID":"d10649b99dd7c7e5b3f9c77df0b7168b"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"551e4732-57ca-458e-aecd-2d8f4ee2f58a"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"1e5d6a05-cdfe-42ae-b664-2632335592b3"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"4d7fe787-953f-43da-99a8-eab1ce24b210"}]},"level":"info","message":"Built pairwise service configurations","requestID":"d10649b99dd7c7e5b3f9c77df0b7168b"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"d10649b99dd7c7e5b3f9c77df0b7168b"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"0df631e0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb63357d2-95e7-45ff-abde-4e63dcb9167a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb63357d2-95e7-45ff-abde-4e63dcb9167a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:16.097173031Z"}]},"request_id":"8efe8fc4-aad7-4dd8-8b97-e98196c21518","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931178.4945538} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1831930a39fd3082494c5216e07cb9d7","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1306,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:18Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1831930a39fd3082494c5216e07cb9d7"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1306,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.677235,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:18Z"} gateway-1 | {"time_local":"21/Sep/2024:15:06:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b63357d2-95e7-45ff-abde-4e63dcb9167a? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1831930a39fd3082494c5216e07cb9d7"} device-1 | {"level":"info","message":"GET /devices/b63357d2-95e7-45ff-abde-4e63dcb9167a? 200 13ms","method":"GET","requestID":"1831930a39fd3082494c5216e07cb9d7","responseTime":13,"status":200,"url":"/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a?"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0df631e0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931178,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE3OH0.pfAbHTCF4LnOdrbw88bu3DrJLoDMXtbfDd7pGZnwHP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0df631e0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"56be915f-a9be-4a94-85c5-a8dc92e5f79d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931178.5052326} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0ae0029e-098a-4da6-b653-46bb127f7e92","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931178.5054514} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"0df631e0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"0df631e0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"0df631e0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/2f74af1a-5158-46c5-9a58-0b4cf9bfced3'","requestID":"0df631e0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/2f74af1a-5158-46c5-9a58-0b4cf9bfced3'","requestID":"0df631e0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"0df631e0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 28ms","method":"POST","requestID":"0df631e0-782b-11ef-88d4-5fea3f61bb98","responseTime":28,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"0df631e0-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"d10649b99dd7c7e5b3f9c77df0b7168b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0dfebd60-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1307,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa33e08a4-b5d4-4189-91b3-b18f4cbddd0d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0f5183c0-d705-4e36-abc8-f23cc6231fbf","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931178.5552642} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1307,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.648015,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0dfebd60-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0dfebd60-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0dfebd60-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d/signaling 200 9ms","method":"POST","requestID":"0dfebd60-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0e004400-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1308,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb63357d2-95e7-45ff-abde-4e63dcb9167a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"868c544f-ebea-4664-a634-f0cafe59f28d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931178.565024} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1308,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.489751,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0e004400-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0e004400-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0e004400-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/b63357d2-95e7-45ff-abde-4e63dcb9167a/signaling 200 8ms","method":"POST","requestID":"0e004400-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a/signaling"} device-1 | {"device":"b63357d2-95e7-45ff-abde-4e63dcb9167a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"b63357d2-95e7-45ff-abde-4e63dcb9167a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 6215367084874375621 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:EZb6\r\na=ice-pwd:tx9ze3V7UXeeiQaSGHUzHOV6\r\na=ice-options:trickle\r\na=fingerprint:sha-256 97:16:D4:2B:3E:FE:81:DC:61:A5:42:3E:6E:BD:61:19:40:1C:8F:37:D9:87:D9:F4:D8:49:A9:98:2E:CF:90:55\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"b63357d2-95e7-45ff-abde-4e63dcb9167a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"b63357d2-95e7-45ff-abde-4e63dcb9167a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"2f74af1a-5158-46c5-9a58-0b4cf9bfced3","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2f74af1a-5158-46c5-9a58-0b4cf9bfced3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2f74af1a-5158-46c5-9a58-0b4cf9bfced3","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2015813dd9e3e63fe511643d9fbb02d5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2015813dd9e3e63fe511643d9fbb02d5","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/2f74af1a-5158-46c5-9a58-0b4cf9bfced3"}}},"level":"info","message":"received a callback","requestID":"2015813dd9e3e63fe511643d9fbb02d5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"2015813dd9e3e63fe511643d9fbb02d5","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"2015813dd9e3e63fe511643d9fbb02d5"} device-1 | {"content":{"candidate":"candidate:4185269943 1 udp 2113937151 b62a8f76-1588-4610-8720-f1f55a976198.local 56618 typ host generation 0 ufrag EZb6 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b63357d2-95e7-45ff-abde-4e63dcb9167a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2103135432 1 udp 1677729535 141.24.211.56 56618 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag EZb6 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b63357d2-95e7-45ff-abde-4e63dcb9167a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:777450307 1 udp 33562623 141.24.210.113 59335 typ relay raddr 141.24.211.56 rport 56618 generation 0 ufrag EZb6 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b63357d2-95e7-45ff-abde-4e63dcb9167a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"b63357d2-95e7-45ff-abde-4e63dcb9167a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a'"} device-1 | {"data":{"peerconnection":"2f74af1a-5158-46c5-9a58-0b4cf9bfced3","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"b63357d2-95e7-45ff-abde-4e63dcb9167a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"2f74af1a-5158-46c5-9a58-0b4cf9bfced3","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2f74af1a-5158-46c5-9a58-0b4cf9bfced3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2f74af1a-5158-46c5-9a58-0b4cf9bfced3","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3de33325d9d19cd58fc6cbc1e7ff8832","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3de33325d9d19cd58fc6cbc1e7ff8832","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/2f74af1a-5158-46c5-9a58-0b4cf9bfced3"}}},"level":"info","message":"received a callback","requestID":"3de33325d9d19cd58fc6cbc1e7ff8832"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"0f3feff0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1309,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:20Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2f74af1a-5158-46c5-9a58-0b4cf9bfced3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2fce05f8-9d22-4546-a580-06e1822037ba","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931180.660331} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1309,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.303685,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2f74af1a-5158-46c5-9a58-0b4cf9bfced3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0f3feff0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/2f74af1a-5158-46c5-9a58-0b4cf9bfced3","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0f3feff0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"0f3feff0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/2f74af1a-5158-46c5-9a58-0b4cf9bfced3 200 10ms","method":"GET","requestID":"0f3feff0-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/peerconnections/2f74af1a-5158-46c5-9a58-0b4cf9bfced3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 27ms","method":"POST","requestID":"3de33325d9d19cd58fc6cbc1e7ff8832","responseTime":27,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.029","http_referrer":"","http_user_agent":"node-fetch","requestID":"3de33325d9d19cd58fc6cbc1e7ff8832"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0f437260-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1310,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:20Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa33e08a4-b5d4-4189-91b3-b18f4cbddd0d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"77aa2aae-b51d-49c8-a63d-5c54da4bc294","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931180.6831067} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1310,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.640817,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0f437260-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0f437260-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0f437260-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d/signaling 200 10ms","method":"POST","requestID":"0f437260-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0f454720-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1311,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:20Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb63357d2-95e7-45ff-abde-4e63dcb9167a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cbb9daf8-f84a-453d-a5c8-794d849388be","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931180.6957269} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1311,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.628047,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0f454720-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0f454720-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0f454720-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/b63357d2-95e7-45ff-abde-4e63dcb9167a/signaling 200 11ms","method":"POST","requestID":"0f454720-782b-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MH0.QL1zn9ngZXgxq9NjTiPKLMOTALMGFgKZgECQpSFD618","level":"info","message":"auth send jwt","requestID":"99bf6954c301c1044be38925682b1662"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"99bf6954c301c1044be38925682b1662","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b","requestID":"99bf6954c301c1044be38925682b1662"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1312,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:20Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1312,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.286954,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"99bf6954c301c1044be38925682b1662","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931180,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MH0.QL1zn9ngZXgxq9NjTiPKLMOTALMGFgKZgECQpSFD618"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"99bf6954c301c1044be38925682b1662","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b","requestID":"99bf6954c301c1044be38925682b1662"} gateway-1 | {"time_local":"21/Sep/2024:15:06:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"99bf6954c301c1044be38925682b1662"} experiment-1 | {"level":"info","message":"GET /experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b 200 15ms","method":"GET","requestID":"99bf6954c301c1044be38925682b1662","responseTime":15,"status":200,"url":"/experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MH0.QL1zn9ngZXgxq9NjTiPKLMOTALMGFgKZgECQpSFD618","level":"info","message":"auth send jwt","requestID":"a157885701e1f46a7d607e731d8b5b31"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a157885701e1f46a7d607e731d8b5b31","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b","requestID":"a157885701e1f46a7d607e731d8b5b31"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1313,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:20Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1313,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.243296,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:20Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a157885701e1f46a7d607e731d8b5b31","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931180,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MH0.QL1zn9ngZXgxq9NjTiPKLMOTALMGFgKZgECQpSFD618"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a157885701e1f46a7d607e731d8b5b31","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b"},"level":"info","message":"Attempting to finish experiment","requestID":"a157885701e1f46a7d607e731d8b5b31"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"0f546250-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1314,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:20Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1314,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.43176,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:20Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2f74af1a-5158-46c5-9a58-0b4cf9bfced3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0f546250-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/2f74af1a-5158-46c5-9a58-0b4cf9bfced3","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931180,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MH0.QL1zn9ngZXgxq9NjTiPKLMOTALMGFgKZgECQpSFD618"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0f546250-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2f74af1a-5158-46c5-9a58-0b4cf9bfced3","device":"b63357d2-95e7-45ff-abde-4e63dcb9167a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2f74af1a-5158-46c5-9a58-0b4cf9bfced3' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/2f74af1a-5158-46c5-9a58-0b4cf9bfced3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2f74af1a-5158-46c5-9a58-0b4cf9bfced3","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1b16c552a32a5103f423ee215245b70d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1b16c552a32a5103f423ee215245b70d","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2f74af1a-5158-46c5-9a58-0b4cf9bfced3': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2f74af1a-5158-46c5-9a58-0b4cf9bfced3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"ab0772df-26a3-4e59-896a-918a782d9d0a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931180.8218384} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c4dd6a76b7a4fbc4cc5756e94d666725","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c4dd6a76b7a4fbc4cc5756e94d666725","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"79c17615-35cb-4489-95af-a2b9368a7ac0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931180.8226588} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"0f546250-782b-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2f74af1a-5158-46c5-9a58-0b4cf9bfced3"}}},"level":"info","message":"received a callback","requestID":"1b16c552a32a5103f423ee215245b70d"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2f74af1a-5158-46c5-9a58-0b4cf9bfced3"}}},"level":"info","message":"received a callback","requestID":"c4dd6a76b7a4fbc4cc5756e94d666725"} device-1 | {"data":{"peerconnection":"2f74af1a-5158-46c5-9a58-0b4cf9bfced3","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"0f546250-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/2f74af1a-5158-46c5-9a58-0b4cf9bfced3 204 56ms","method":"DELETE","requestID":"0f546250-782b-11ef-88d4-5fea3f61bb98","responseTime":56,"status":204,"url":"/peerconnections/2f74af1a-5158-46c5-9a58-0b4cf9bfced3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b"},"level":"info","message":"Successfully finished experiment","requestID":"a157885701e1f46a7d607e731d8b5b31"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0f607040-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1315,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:20Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa33e08a4-b5d4-4189-91b3-b18f4cbddd0d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3952bf51-4180-459c-87ec-16db71367076","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931180.8738089} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1315,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.339353,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0f607040-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0f607040-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0f607040-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d/signaling 200 12ms","method":"POST","requestID":"0f607040-782b-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff92182c6-b7a3-4ba5-a2fd-fbf49c3e717b': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff92182c6-b7a3-4ba5-a2fd-fbf49c3e717b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"718ff41a-5775-4514-8c6d-47a2a8519e98","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931180.8820355} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0f62ba30-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8fd3de56-aa67-47ea-9d07-4dc2223f0035","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931180.882763} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"a157885701e1f46a7d607e731d8b5b31","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1316,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:20Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb63357d2-95e7-45ff-abde-4e63dcb9167a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e6a58918-1a19-4067-86ab-c1337350d6f8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931180.8890288} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1316,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.041482,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0f62ba30-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0f62ba30-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0f62ba30-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/b63357d2-95e7-45ff-abde-4e63dcb9167a/signaling 200 11ms","method":"POST","requestID":"0f62ba30-782b-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b","requestID":"a157885701e1f46a7d607e731d8b5b31"} gateway-1 | {"time_local":"21/Sep/2024:15:06:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.182","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a157885701e1f46a7d607e731d8b5b31"} gateway-1 | {"time_local":"21/Sep/2024:15:06:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3625","request_time":"4.312","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"98859dd2acb561cd251fae55907e8c9b"} experiment-1 | {"level":"info","message":"DELETE /experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b 204 178ms","method":"DELETE","requestID":"a157885701e1f46a7d607e731d8b5b31","responseTime":178,"status":204,"url":"/experiments/f92182c6-b7a3-4ba5-a2fd-fbf49c3e717b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 135ms","method":"POST","requestID":"1b16c552a32a5103f423ee215245b70d","responseTime":135,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MH0.QL1zn9ngZXgxq9NjTiPKLMOTALMGFgKZgECQpSFD618","level":"info","message":"auth send jwt","requestID":"807b3fcdafc44df57d3cf35baf6893bd"} gateway-1 | {"time_local":"21/Sep/2024:15:06:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.141","http_referrer":"","http_user_agent":"node-fetch","requestID":"1b16c552a32a5103f423ee215245b70d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"807b3fcdafc44df57d3cf35baf6893bd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"807b3fcdafc44df57d3cf35baf6893bd"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 137ms","method":"POST","requestID":"c4dd6a76b7a4fbc4cc5756e94d666725","responseTime":137,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.144","http_referrer":"","http_user_agent":"node-fetch","requestID":"c4dd6a76b7a4fbc4cc5756e94d666725"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1317,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:20Z"} gateway-1 | {"time_local":"21/Sep/2024:15:06:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3087","request_time":"2.814","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e4d75ba010dd91cf6886f757d9d8f223"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1317,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.975278,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"807b3fcdafc44df57d3cf35baf6893bd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931180,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MH0.QL1zn9ngZXgxq9NjTiPKLMOTALMGFgKZgECQpSFD618"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a33e08a4-b5d4-4189-91b3-b18f4cbddd0d' closed"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"807b3fcdafc44df57d3cf35baf6893bd","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/b63357d2-95e7-45ff-abde-4e63dcb9167a' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb3fe2adb-0b0e-49d4-a52e-132bb3aec166","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"306e6a27-2e1a-48df-a7b3-1b74ef11e81a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931180.9808202} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"807b3fcdafc44df57d3cf35baf6893bd","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"07716fdb-99bb-40d0-a242-c7c10de6fe32","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931180.9854555} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"807b3fcdafc44df57d3cf35baf6893bd","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb3fe2adb-0b0e-49d4-a52e-132bb3aec166","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"3a987b24-d012-486c-a51b-2a1fed227330","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931180.9957924} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"853f6b0e-a251-42b9-8c10-dca31d8211d6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931180.9960012} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"807b3fcdafc44df57d3cf35baf6893bd","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb3fe2adb-0b0e-49d4-a52e-132bb3aec166","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb3fe2adb-0b0e-49d4-a52e-132bb3aec166","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:20.995742704Z"}]},"request_id":"a5f2ffe9-3494-45e4-947d-0d763163b466","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.0002692} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"807b3fcdafc44df57d3cf35baf6893bd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"807b3fcdafc44df57d3cf35baf6893bd"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"807b3fcdafc44df57d3cf35baf6893bd","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"807b3fcdafc44df57d3cf35baf6893bd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MX0.0DJMfVlVCLZRXm9DUPi7Ew3LmjloQJTxKXRwHeFu69s","level":"info","message":"auth send jwt","requestID":"ddfc92584736fc176cd9e5de3a1de3c8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ddfc92584736fc176cd9e5de3a1de3c8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ddfc92584736fc176cd9e5de3a1de3c8"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1318,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1318,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.721945,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ddfc92584736fc176cd9e5de3a1de3c8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931181,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MX0.0DJMfVlVCLZRXm9DUPi7Ew3LmjloQJTxKXRwHeFu69s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ddfc92584736fc176cd9e5de3a1de3c8","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"dc31f620-bbe2-4529-8889-2bfd2e88ecf0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.024507} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ddfc92584736fc176cd9e5de3a1de3c8","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"835af2e7-1a7c-474c-bd26-8034871357e9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.02906} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"ddfc92584736fc176cd9e5de3a1de3c8","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"3718b07e-5fa2-4110-a5ff-44644dbce05a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.0448756} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1b55d6b2-13cd-4fb5-aee7-f5f5c630461d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.0450108} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"ddfc92584736fc176cd9e5de3a1de3c8","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:21.044840592Z"}]},"request_id":"d02322e3-667f-4d60-96eb-38178e7aa84d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.049092} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ddfc92584736fc176cd9e5de3a1de3c8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ddfc92584736fc176cd9e5de3a1de3c8"} gateway-1 | {"time_local":"21/Sep/2024:15:06:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ddfc92584736fc176cd9e5de3a1de3c8"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"ddfc92584736fc176cd9e5de3a1de3c8","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MX0.0DJMfVlVCLZRXm9DUPi7Ew3LmjloQJTxKXRwHeFu69s","level":"info","message":"auth send jwt","requestID":"58fa56ff9249fd2231c77e50c34c37b3"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"58fa56ff9249fd2231c77e50c34c37b3","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"58fa56ff9249fd2231c77e50c34c37b3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MX0.0DJMfVlVCLZRXm9DUPi7Ew3LmjloQJTxKXRwHeFu69s","level":"info","message":"auth send jwt","requestID":"063b651a0a9b08234e38357a82377457"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"063b651a0a9b08234e38357a82377457","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"063b651a0a9b08234e38357a82377457"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1319,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1319,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.808327,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Received request.","req_id":1320,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"58fa56ff9249fd2231c77e50c34c37b3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931181,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MX0.0DJMfVlVCLZRXm9DUPi7Ew3LmjloQJTxKXRwHeFu69s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"58fa56ff9249fd2231c77e50c34c37b3","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Sent response.","req_id":1320,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.572482,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"063b651a0a9b08234e38357a82377457","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931181,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MX0.0DJMfVlVCLZRXm9DUPi7Ew3LmjloQJTxKXRwHeFu69s"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"063b651a0a9b08234e38357a82377457","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:21.044840592Z"}]},"request_id":"b39d76a4-f84f-4a40-ae63-be14d7d40014","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.5251365} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"58fa56ff9249fd2231c77e50c34c37b3","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb3fe2adb-0b0e-49d4-a52e-132bb3aec166","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb3fe2adb-0b0e-49d4-a52e-132bb3aec166","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:20.995742704Z"}]},"request_id":"515fd78a-a746-4922-a8c3-a0fb23395ed2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.5257428} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"063b651a0a9b08234e38357a82377457","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dc5363b0-becc-45ca-8044-919d1ed4413c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.5298252} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"58fa56ff9249fd2231c77e50c34c37b3","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1c70e327-1f82-4233-9c23-50cd1c660cac","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.5307195} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"063b651a0a9b08234e38357a82377457","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb3fe2adb-0b0e-49d4-a52e-132bb3aec166","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb3fe2adb-0b0e-49d4-a52e-132bb3aec166","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:20.995742704Z"}]},"request_id":"941b91ca-ba93-45a7-8b76-6c25d453f783","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.533672} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"063b651a0a9b08234e38357a82377457","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"063b651a0a9b08234e38357a82377457"} device-1 | {"level":"info","message":"PATCH /devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166 200 19ms","method":"PATCH","requestID":"063b651a0a9b08234e38357a82377457","responseTime":19,"status":200,"url":"/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166"} gateway-1 | {"time_local":"21/Sep/2024:15:06:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.028","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"063b651a0a9b08234e38357a82377457"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MX0.0DJMfVlVCLZRXm9DUPi7Ew3LmjloQJTxKXRwHeFu69s","level":"info","message":"auth send jwt","requestID":"95c4226825e51d1c20ce3e6b981d35eb"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"95c4226825e51d1c20ce3e6b981d35eb","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"95c4226825e51d1c20ce3e6b981d35eb"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1321,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1321,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.612933,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"95c4226825e51d1c20ce3e6b981d35eb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931181,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MX0.0DJMfVlVCLZRXm9DUPi7Ew3LmjloQJTxKXRwHeFu69s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"95c4226825e51d1c20ce3e6b981d35eb","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:21.044840592Z"}]},"request_id":"8631b059-4fa8-4416-8b47-f6b30b830ba9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.5436702} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"58fa56ff9249fd2231c77e50c34c37b3","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"58fa56ff9249fd2231c77e50c34c37b3"} device-1 | {"level":"info","message":"PATCH /devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5 200 32ms","method":"PATCH","requestID":"58fa56ff9249fd2231c77e50c34c37b3","responseTime":32,"status":200,"url":"/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5"} gateway-1 | {"time_local":"21/Sep/2024:15:06:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"58fa56ff9249fd2231c77e50c34c37b3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MX0.0DJMfVlVCLZRXm9DUPi7Ew3LmjloQJTxKXRwHeFu69s","level":"info","message":"auth send jwt","requestID":"0016a765b248e30e8a5be197a6a2e31a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0016a765b248e30e8a5be197a6a2e31a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0016a765b248e30e8a5be197a6a2e31a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1322,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1322,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.869141,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:21Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"95c4226825e51d1c20ce3e6b981d35eb"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0016a765b248e30e8a5be197a6a2e31a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931181,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MX0.0DJMfVlVCLZRXm9DUPi7Ew3LmjloQJTxKXRwHeFu69s"} gateway-1 | {"time_local":"21/Sep/2024:15:06:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"95c4226825e51d1c20ce3e6b981d35eb"} device-1 | {"level":"info","message":"POST /devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166/websocket 200 18ms","method":"POST","requestID":"95c4226825e51d1c20ce3e6b981d35eb","responseTime":18,"status":200,"url":"/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166/websocket"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0016a765b248e30e8a5be197a6a2e31a","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0016a765b248e30e8a5be197a6a2e31a"} device-1 | {"level":"info","message":"POST /devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5/websocket 200 22ms","method":"POST","requestID":"0016a765b248e30e8a5be197a6a2e31a","responseTime":22,"status":200,"url":"/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:06:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"0016a765b248e30e8a5be197a6a2e31a"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MX0.0DJMfVlVCLZRXm9DUPi7Ew3LmjloQJTxKXRwHeFu69s","level":"info","message":"auth send jwt","requestID":"5e6f1edd05638696cd06543f7bb8c695"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5e6f1edd05638696cd06543f7bb8c695","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5e6f1edd05638696cd06543f7bb8c695"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1323,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1323,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.185387,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"5e6f1edd05638696cd06543f7bb8c695","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931181,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MX0.0DJMfVlVCLZRXm9DUPi7Ew3LmjloQJTxKXRwHeFu69s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5e6f1edd05638696cd06543f7bb8c695","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb3fe2adb-0b0e-49d4-a52e-132bb3aec166","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb3fe2adb-0b0e-49d4-a52e-132bb3aec166","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:20.995742704Z"}]},"request_id":"d5c9f695-b950-4d72-8125-343e43287469","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.6078851} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5e6f1edd05638696cd06543f7bb8c695","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5e6f1edd05638696cd06543f7bb8c695"} device-1 | {"level":"info","message":"GET /devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166? 200 11ms","method":"GET","requestID":"5e6f1edd05638696cd06543f7bb8c695","responseTime":11,"status":200,"url":"/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5e6f1edd05638696cd06543f7bb8c695"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MX0.0DJMfVlVCLZRXm9DUPi7Ew3LmjloQJTxKXRwHeFu69s","level":"info","message":"auth send jwt","requestID":"f23deda7ca7fc7adcf86f3a157678b0c"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f23deda7ca7fc7adcf86f3a157678b0c","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f23deda7ca7fc7adcf86f3a157678b0c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1324,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1324,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.940507,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f23deda7ca7fc7adcf86f3a157678b0c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931181,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MX0.0DJMfVlVCLZRXm9DUPi7Ew3LmjloQJTxKXRwHeFu69s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f23deda7ca7fc7adcf86f3a157678b0c","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:21.044840592Z"}]},"request_id":"c2b6f039-8616-4040-b6e7-ced43f6d7190","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.6230912} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f23deda7ca7fc7adcf86f3a157678b0c","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f23deda7ca7fc7adcf86f3a157678b0c"} gateway-1 | {"time_local":"21/Sep/2024:15:06:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f23deda7ca7fc7adcf86f3a157678b0c"} device-1 | {"level":"info","message":"GET /devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5? 200 10ms","method":"GET","requestID":"f23deda7ca7fc7adcf86f3a157678b0c","responseTime":10,"status":200,"url":"/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MX0.0DJMfVlVCLZRXm9DUPi7Ew3LmjloQJTxKXRwHeFu69s","level":"info","message":"auth send jwt","requestID":"547bcabe02e3bd8e65e3bd80e7840088"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"547bcabe02e3bd8e65e3bd80e7840088","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"547bcabe02e3bd8e65e3bd80e7840088"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1325,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1325,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.030764,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"547bcabe02e3bd8e65e3bd80e7840088","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931181,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MX0.0DJMfVlVCLZRXm9DUPi7Ew3LmjloQJTxKXRwHeFu69s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"547bcabe02e3bd8e65e3bd80e7840088","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1291494f-eb18-4e43-9b84-9a0eb37130da"},"level":"info","message":"Attempting to run experiment","requestID":"547bcabe02e3bd8e65e3bd80e7840088"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1291494f-eb18-4e43-9b84-9a0eb37130da"},"level":"info","message":"Attempting to book experiment","requestID":"547bcabe02e3bd8e65e3bd80e7840088"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1291494f-eb18-4e43-9b84-9a0eb37130da"},"level":"info","message":"Successfully booked experiment","requestID":"547bcabe02e3bd8e65e3bd80e7840088"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0fd970d0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0fd997e0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1326,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1326,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.686155,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Received request.","req_id":1327,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0fd970d0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931181,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MX0.0DJMfVlVCLZRXm9DUPi7Ew3LmjloQJTxKXRwHeFu69s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0fd970d0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Sent response.","req_id":1327,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.597476,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0fd997e0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931181,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MX0.0DJMfVlVCLZRXm9DUPi7Ew3LmjloQJTxKXRwHeFu69s"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"0fd997e0-782b-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb3fe2adb-0b0e-49d4-a52e-132bb3aec166","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb3fe2adb-0b0e-49d4-a52e-132bb3aec166","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:20.995742704Z"}]},"request_id":"87f19103-d7de-45af-b238-51ac2b654fc5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.6674118} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0fd970d0-782b-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:21.044840592Z"}]},"request_id":"e4b0b7c9-42df-4e1f-a909-119af3844568","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.6680577} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0fd997e0-782b-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0fd970d0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166? 200 11ms","method":"GET","requestID":"0fd970d0-782b-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0fd997e0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5? 200 10ms","method":"GET","requestID":"0fd997e0-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1291494f-eb18-4e43-9b84-9a0eb37130da"},"level":"info","message":"Setting up experiment","requestID":"547bcabe02e3bd8e65e3bd80e7840088"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1291494f-eb18-4e43-9b84-9a0eb37130da"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"547bcabe02e3bd8e65e3bd80e7840088"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1291494f-eb18-4e43-9b84-9a0eb37130da"},"level":"info","message":"Successfully locked booking for experiment","requestID":"547bcabe02e3bd8e65e3bd80e7840088"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1291494f-eb18-4e43-9b84-9a0eb37130da"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"547bcabe02e3bd8e65e3bd80e7840088"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1291494f-eb18-4e43-9b84-9a0eb37130da"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"547bcabe02e3bd8e65e3bd80e7840088"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1291494f-eb18-4e43-9b84-9a0eb37130da"},"level":"info","message":"Attempting to update booking for experiment","requestID":"547bcabe02e3bd8e65e3bd80e7840088"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1291494f-eb18-4e43-9b84-9a0eb37130da"},"level":"info","message":"Successfully updated booking for experiment","requestID":"547bcabe02e3bd8e65e3bd80e7840088"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1291494f-eb18-4e43-9b84-9a0eb37130da"},"level":"info","message":"Successfully set up experiment","requestID":"547bcabe02e3bd8e65e3bd80e7840088"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0fe0eae0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0fe111f0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0fe13900-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1291494f-eb18-4e43-9b84-9a0eb37130da"},"level":"info","message":"Successfully running experiment","requestID":"547bcabe02e3bd8e65e3bd80e7840088"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1328,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1328,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.8427,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Received request.","req_id":1329,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0fe0eae0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931181,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MX0.0DJMfVlVCLZRXm9DUPi7Ew3LmjloQJTxKXRwHeFu69s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0fe0eae0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Sent response.","req_id":1329,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.78527,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0fe111f0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931181,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MX0.0DJMfVlVCLZRXm9DUPi7Ew3LmjloQJTxKXRwHeFu69s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0fe111f0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34508","level":"info","msg":"Received request.","req_id":1330,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb3fe2adb-0b0e-49d4-a52e-132bb3aec166","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb3fe2adb-0b0e-49d4-a52e-132bb3aec166","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:20.995742704Z"}]},"request_id":"e0a8284d-f4aa-405f-8387-c3628df9f510","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.7188294} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0fe0eae0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:21.044840592Z"}]},"request_id":"1708e7c4-a52a-4f40-bb1e-e4a44e7c14a3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.720079} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0fe111f0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb3fe2adb-0b0e-49d4-a52e-132bb3aec166","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8af2b822-50d5-4b6c-8478-eab3784f71ed","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.720731} authorization-1 | {"client_addr":"127.0.0.1:34508","level":"info","msg":"Sent response.","req_id":1330,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.723161,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0fe13900-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"0fe13900-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0fe0eae0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166? 200 15ms","method":"GET","requestID":"0fe0eae0-782b-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0fe111f0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5? 200 15ms","method":"GET","requestID":"0fe111f0-782b-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0fe13900-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1291494f-eb18-4e43-9b84-9a0eb37130da#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1291494f-eb18-4e43-9b84-9a0eb37130da","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"15f7bbb2-9c39-44a2-bfad-619cbf079b54","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.7270353} device-1 | {"level":"info","message":"POST /devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166/signaling 200 15ms","method":"POST","requestID":"0fe13900-782b-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a3d1e384-c2a6-48da-bea3-52e77874b6e8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.7273567} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"547bcabe02e3bd8e65e3bd80e7840088","responseTime":13,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0fe3d110-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0fe3f820-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1331,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Received request.","req_id":1332,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb3fe2adb-0b0e-49d4-a52e-132bb3aec166","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d64a6391-2101-4125-8b7a-8effd8560a9a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.7336133} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"14281cc9-edcf-427b-a308-64306bb143ad","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.7340043} experiment-1 | {"data":{"experiment":"http://localhost/experiments/1291494f-eb18-4e43-9b84-9a0eb37130da","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"547bcabe02e3bd8e65e3bd80e7840088"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1331,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.784588,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:21Z"} experiment-1 | {"level":"info","message":"POST /experiments? 201 102ms","method":"POST","requestID":"547bcabe02e3bd8e65e3bd80e7840088","responseTime":102,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1220","request_time":"0.107","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"547bcabe02e3bd8e65e3bd80e7840088"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0fe3d110-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0fe3d110-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Sent response.","req_id":1332,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.093765,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0fe3f820-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0fe3f820-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0fe3d110-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166/signaling 200 9ms","method":"POST","requestID":"0fe3d110-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0fe3f820-782b-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MX0.0DJMfVlVCLZRXm9DUPi7Ew3LmjloQJTxKXRwHeFu69s","level":"info","message":"auth send jwt","requestID":"bbaac8e0b2abe5757d04684bb55052d6"} device-1 | {"level":"info","message":"POST /devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5/signaling 200 9ms","method":"POST","requestID":"0fe3f820-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bbaac8e0b2abe5757d04684bb55052d6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bbaac8e0b2abe5757d04684bb55052d6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0fe5a5d0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1333,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1333,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.836743,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Received request.","req_id":1334,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bbaac8e0b2abe5757d04684bb55052d6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931181,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MX0.0DJMfVlVCLZRXm9DUPi7Ew3LmjloQJTxKXRwHeFu69s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bbaac8e0b2abe5757d04684bb55052d6","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"93fe4fca-8cc0-4f9c-91f8-678aaddd497a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.7467778} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Sent response.","req_id":1334,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.842405,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0fe5a5d0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0fe5a5d0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb3fe2adb-0b0e-49d4-a52e-132bb3aec166","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb3fe2adb-0b0e-49d4-a52e-132bb3aec166","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:20.995742704Z"}]},"request_id":"ad46b891-c790-4bb7-84aa-202c8ae3b8b3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.747882} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bbaac8e0b2abe5757d04684bb55052d6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0fe5a5d0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5/signaling 200 10ms","method":"POST","requestID":"0fe5a5d0-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bbaac8e0b2abe5757d04684bb55052d6"} gateway-1 | {"time_local":"21/Sep/2024:15:06:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bbaac8e0b2abe5757d04684bb55052d6"} device-1 | {"level":"info","message":"GET /devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166? 200 12ms","method":"GET","requestID":"bbaac8e0b2abe5757d04684bb55052d6","responseTime":12,"status":200,"url":"/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1291494f-eb18-4e43-9b84-9a0eb37130da"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"547bcabe02e3bd8e65e3bd80e7840088"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0fe77a90-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0fe7a1a0-782b-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MX0.0DJMfVlVCLZRXm9DUPi7Ew3LmjloQJTxKXRwHeFu69s","level":"info","message":"auth send jwt","requestID":"e13b4123b16b2f730a853e857464ca9d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e13b4123b16b2f730a853e857464ca9d","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1335,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1335,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.663537,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Received request.","req_id":1336,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:21Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e13b4123b16b2f730a853e857464ca9d"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0fe77a90-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931181,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MX0.0DJMfVlVCLZRXm9DUPi7Ew3LmjloQJTxKXRwHeFu69s"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0fe77a90-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Sent response.","req_id":1336,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.674446,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0fe7a1a0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931181,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MX0.0DJMfVlVCLZRXm9DUPi7Ew3LmjloQJTxKXRwHeFu69s"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0fe7a1a0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1337,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1337,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.695026,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e13b4123b16b2f730a853e857464ca9d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931181,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MX0.0DJMfVlVCLZRXm9DUPi7Ew3LmjloQJTxKXRwHeFu69s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e13b4123b16b2f730a853e857464ca9d","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb3fe2adb-0b0e-49d4-a52e-132bb3aec166","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb3fe2adb-0b0e-49d4-a52e-132bb3aec166","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:20.995742704Z"}]},"request_id":"dba34e92-6ba5-459a-9863-aeb3437a4b8a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.7647066} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:21.044840592Z"}]},"request_id":"cacef2db-4cc6-49c2-b73e-1750ee203a00","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.7655149} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0fe77a90-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0fe7a1a0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:21.044840592Z"}]},"request_id":"acf5d9d8-4a72-473f-b767-0f1f79bda0e4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.7694902} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e13b4123b16b2f730a853e857464ca9d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0fe77a90-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166? 200 18ms","method":"GET","requestID":"0fe77a90-782b-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0fe7a1a0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5? 200 18ms","method":"GET","requestID":"0fe7a1a0-782b-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e13b4123b16b2f730a853e857464ca9d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1291494f-eb18-4e43-9b84-9a0eb37130da"},"level":"info","message":"Building connection plan","requestID":"547bcabe02e3bd8e65e3bd80e7840088"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"c14adc4e-ed20-4586-9e18-06028fd9c89a"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"221c9167-15a4-4a8f-afd4-c87deca47f43"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"5213ee2b-a27f-4551-b2e6-0b7cd274a573"}]},"level":"info","message":"Built pairwise service configurations","requestID":"547bcabe02e3bd8e65e3bd80e7840088"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"547bcabe02e3bd8e65e3bd80e7840088"} gateway-1 | {"time_local":"21/Sep/2024:15:06:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e13b4123b16b2f730a853e857464ca9d"} device-1 | {"level":"info","message":"GET /devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5? 200 16ms","method":"GET","requestID":"e13b4123b16b2f730a853e857464ca9d","responseTime":16,"status":200,"url":"/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"0feaaee0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1338,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1338,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.984139,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0feaaee0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931181,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4MX0.0DJMfVlVCLZRXm9DUPi7Ew3LmjloQJTxKXRwHeFu69s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0feaaee0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"b6b36bce-75f0-44e3-bcc4-44a3c97ea77b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.7848332} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"159d8ac1-37f4-4a60-a4ff-e0fa3b36119f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.785029} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"0feaaee0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"0feaaee0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"0feaaee0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/075ebf27-d89d-4b0f-a59c-f882a4c452a0'","requestID":"0feaaee0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/075ebf27-d89d-4b0f-a59c-f882a4c452a0'","requestID":"0feaaee0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"0feaaee0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 23ms","method":"POST","requestID":"0feaaee0-782b-11ef-88d4-5fea3f61bb98","responseTime":23,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"0feaaee0-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1291494f-eb18-4e43-9b84-9a0eb37130da"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"547bcabe02e3bd8e65e3bd80e7840088"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0ff201e0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1339,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb3fe2adb-0b0e-49d4-a52e-132bb3aec166","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c15e5f13-3da7-4a2c-92b5-047b2963e3f6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.8276145} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1339,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.828038,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0ff201e0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0ff201e0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0ff201e0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166/signaling 200 8ms","method":"POST","requestID":"0ff201e0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0ff3af90-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1340,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a22998ad-c0e8-4cf2-93b2-8635e7e44a8f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931181.8375916} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1340,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.306502,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0ff3af90-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0ff3af90-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0ff3af90-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5/signaling 200 8ms","method":"POST","requestID":"0ff3af90-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5/signaling"} device-1 | {"device":"b3fe2adb-0b0e-49d4-a52e-132bb3aec166","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"075ebf27-d89d-4b0f-a59c-f882a4c452a0","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"075ebf27-d89d-4b0f-a59c-f882a4c452a0","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/075ebf27-d89d-4b0f-a59c-f882a4c452a0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"075ebf27-d89d-4b0f-a59c-f882a4c452a0","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4792c3523db8556814e32ee681c77bc0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4792c3523db8556814e32ee681c77bc0","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/075ebf27-d89d-4b0f-a59c-f882a4c452a0"}}},"level":"info","message":"received a callback","requestID":"4792c3523db8556814e32ee681c77bc0"} device-1 | {"device":"b3fe2adb-0b0e-49d4-a52e-132bb3aec166","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"b3fe2adb-0b0e-49d4-a52e-132bb3aec166","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"b3fe2adb-0b0e-49d4-a52e-132bb3aec166","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"4792c3523db8556814e32ee681c77bc0","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"4792c3523db8556814e32ee681c77bc0"} device-1 | {"data":{"peerconnection":"075ebf27-d89d-4b0f-a59c-f882a4c452a0","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"b3fe2adb-0b0e-49d4-a52e-132bb3aec166","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"b3fe2adb-0b0e-49d4-a52e-132bb3aec166","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"075ebf27-d89d-4b0f-a59c-f882a4c452a0","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/075ebf27-d89d-4b0f-a59c-f882a4c452a0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"075ebf27-d89d-4b0f-a59c-f882a4c452a0","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e94ed8e9c41b4948691bc2a26b7d4701","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e94ed8e9c41b4948691bc2a26b7d4701","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/075ebf27-d89d-4b0f-a59c-f882a4c452a0"}}},"level":"info","message":"received a callback","requestID":"e94ed8e9c41b4948691bc2a26b7d4701"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"112fb200-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1341,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:23Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F075ebf27-d89d-4b0f-a59c-f882a4c452a0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"183810a4-a964-4faf-a7ca-458e0318be6d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931183.9105792} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1341,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.943146,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/075ebf27-d89d-4b0f-a59c-f882a4c452a0","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"112fb200-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/075ebf27-d89d-4b0f-a59c-f882a4c452a0","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"112fb200-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"112fb200-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/075ebf27-d89d-4b0f-a59c-f882a4c452a0 200 12ms","method":"GET","requestID":"112fb200-782b-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/peerconnections/075ebf27-d89d-4b0f-a59c-f882a4c452a0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 46ms","method":"POST","requestID":"e94ed8e9c41b4948691bc2a26b7d4701","responseTime":46,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch","requestID":"e94ed8e9c41b4948691bc2a26b7d4701"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1135cc80-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1342,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:23Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d1b7a1cb-c8ff-4900-b945-3b2397a62633","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931183.951345} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1342,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.916416,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1135cc80-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"1135cc80-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1135cc80-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5/signaling 200 14ms","method":"POST","requestID":"1135cc80-782b-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"11386490-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1343,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:23Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb3fe2adb-0b0e-49d4-a52e-132bb3aec166","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"04f038c1-9ae9-42cd-a656-17455f13bb90","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931183.969533} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1343,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.549233,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"11386490-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"11386490-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"11386490-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166/signaling 200 15ms","method":"POST","requestID":"11386490-782b-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4M30.TYWtzLpbFbXs1Y98MnhGYbh1eebG5vtC49aM_AFy0bQ","level":"info","message":"auth send jwt","requestID":"bec5547d586ab0a0ebdb0b9e62d6a0dd"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"bec5547d586ab0a0ebdb0b9e62d6a0dd","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/1291494f-eb18-4e43-9b84-9a0eb37130da","requestID":"bec5547d586ab0a0ebdb0b9e62d6a0dd"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1344,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:23Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1344,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.245046,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1291494f-eb18-4e43-9b84-9a0eb37130da","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bec5547d586ab0a0ebdb0b9e62d6a0dd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/1291494f-eb18-4e43-9b84-9a0eb37130da","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931183,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4M30.TYWtzLpbFbXs1Y98MnhGYbh1eebG5vtC49aM_AFy0bQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bec5547d586ab0a0ebdb0b9e62d6a0dd","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/1291494f-eb18-4e43-9b84-9a0eb37130da","requestID":"bec5547d586ab0a0ebdb0b9e62d6a0dd"} gateway-1 | {"time_local":"21/Sep/2024:15:06:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/1291494f-eb18-4e43-9b84-9a0eb37130da HTTP/1.1","status": "200","body_bytes_sent":"1293","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bec5547d586ab0a0ebdb0b9e62d6a0dd"} experiment-1 | {"level":"info","message":"GET /experiments/1291494f-eb18-4e43-9b84-9a0eb37130da 200 16ms","method":"GET","requestID":"bec5547d586ab0a0ebdb0b9e62d6a0dd","responseTime":16,"status":200,"url":"/experiments/1291494f-eb18-4e43-9b84-9a0eb37130da"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE","level":"info","message":"auth send jwt","requestID":"ea6c153c44867844626fed2eb51d3498"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ea6c153c44867844626fed2eb51d3498","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/1291494f-eb18-4e43-9b84-9a0eb37130da","requestID":"ea6c153c44867844626fed2eb51d3498"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1345,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1345,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.257892,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1291494f-eb18-4e43-9b84-9a0eb37130da","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ea6c153c44867844626fed2eb51d3498","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/1291494f-eb18-4e43-9b84-9a0eb37130da","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931184,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ea6c153c44867844626fed2eb51d3498","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1291494f-eb18-4e43-9b84-9a0eb37130da"},"level":"info","message":"Attempting to finish experiment","requestID":"ea6c153c44867844626fed2eb51d3498"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"11438820-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1346,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1346,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.589812,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/075ebf27-d89d-4b0f-a59c-f882a4c452a0","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"11438820-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/075ebf27-d89d-4b0f-a59c-f882a4c452a0","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931184,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"11438820-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"b3fe2adb-0b0e-49d4-a52e-132bb3aec166","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"b3fe2adb-0b0e-49d4-a52e-132bb3aec166","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"b3fe2adb-0b0e-49d4-a52e-132bb3aec166","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/075ebf27-d89d-4b0f-a59c-f882a4c452a0' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/075ebf27-d89d-4b0f-a59c-f882a4c452a0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"075ebf27-d89d-4b0f-a59c-f882a4c452a0","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b74a141b6100316517e91564dafb2026","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b74a141b6100316517e91564dafb2026","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F075ebf27-d89d-4b0f-a59c-f882a4c452a0': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F075ebf27-d89d-4b0f-a59c-f882a4c452a0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"accf89a2-0645-4bfe-a2de-6c5cf76bc211","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931184.0590646} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"708c619b-2ba6-4c41-aaba-2401d9146582","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931184.0597808} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"11438820-782b-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"56578c7d2e1715a901118da4f5e54090","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/075ebf27-d89d-4b0f-a59c-f882a4c452a0"}}},"level":"info","message":"received a callback","requestID":"b74a141b6100316517e91564dafb2026"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"56578c7d2e1715a901118da4f5e54090","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/075ebf27-d89d-4b0f-a59c-f882a4c452a0"}}},"level":"info","message":"received a callback","requestID":"56578c7d2e1715a901118da4f5e54090"} device-1 | {"data":{"peerconnection":"075ebf27-d89d-4b0f-a59c-f882a4c452a0","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"11438820-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/075ebf27-d89d-4b0f-a59c-f882a4c452a0 204 50ms","method":"DELETE","requestID":"11438820-782b-11ef-88d4-5fea3f61bb98","responseTime":50,"status":204,"url":"/peerconnections/075ebf27-d89d-4b0f-a59c-f882a4c452a0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1291494f-eb18-4e43-9b84-9a0eb37130da"},"level":"info","message":"Successfully finished experiment","requestID":"ea6c153c44867844626fed2eb51d3498"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"114eabb0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1347,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d7c70c64-fd57-452d-89c3-f0b0244cbd79","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931184.114034} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1347,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.074612,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"114eabb0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"114eabb0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"114eabb0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5/signaling 200 14ms","method":"POST","requestID":"114eabb0-782b-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1291494f-eb18-4e43-9b84-9a0eb37130da': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1291494f-eb18-4e43-9b84-9a0eb37130da","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"b3965239-c21f-45e8-af64-e3c324168749","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931184.1217117} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"457705a7-d690-4ecf-89a4-52211654dcf0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931184.1222491} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"ea6c153c44867844626fed2eb51d3498","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"115143c0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1348,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb3fe2adb-0b0e-49d4-a52e-132bb3aec166","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"16a044b4-39a8-4742-a7bb-c422260d99e3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931184.1298232} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1348,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.31842,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"115143c0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"115143c0-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"115143c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166/signaling 200 12ms","method":"POST","requestID":"115143c0-782b-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/1291494f-eb18-4e43-9b84-9a0eb37130da","requestID":"ea6c153c44867844626fed2eb51d3498"} gateway-1 | {"time_local":"21/Sep/2024:15:06:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/1291494f-eb18-4e43-9b84-9a0eb37130da HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.174","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ea6c153c44867844626fed2eb51d3498"} experiment-1 | {"level":"info","message":"DELETE /experiments/1291494f-eb18-4e43-9b84-9a0eb37130da 204 170ms","method":"DELETE","requestID":"ea6c153c44867844626fed2eb51d3498","responseTime":170,"status":204,"url":"/experiments/1291494f-eb18-4e43-9b84-9a0eb37130da"} gateway-1 | {"time_local":"21/Sep/2024:15:06:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3092","request_time":"2.611","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"3d7149c76b5bfed319489f699d261613"} gateway-1 | {"time_local":"21/Sep/2024:15:06:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3094","request_time":"2.629","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"37dcc591f215b23465261416434be802"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"b74a141b6100316517e91564dafb2026","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.134","http_referrer":"","http_user_agent":"node-fetch","requestID":"b74a141b6100316517e91564dafb2026"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"56578c7d2e1715a901118da4f5e54090","responseTime":127,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.135","http_referrer":"","http_user_agent":"node-fetch","requestID":"56578c7d2e1715a901118da4f5e54090"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE","level":"info","message":"auth send jwt","requestID":"15b0c07c8ad4f6ff9a21db6c2d494c6b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"15b0c07c8ad4f6ff9a21db6c2d494c6b","responseTime":5,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/d9f1a5ff-5a55-43a6-ae1d-015d5b29b7b5' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"15b0c07c8ad4f6ff9a21db6c2d494c6b"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1349,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1349,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.994693,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"15b0c07c8ad4f6ff9a21db6c2d494c6b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931184,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"15b0c07c8ad4f6ff9a21db6c2d494c6b","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/b3fe2adb-0b0e-49d4-a52e-132bb3aec166' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f61fa640-0f5f-40bf-a048-2f98201c942f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931184.220729} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"15b0c07c8ad4f6ff9a21db6c2d494c6b","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"140eda53-d3e6-4a04-b98e-a218623cfb55","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931184.2264907} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"15b0c07c8ad4f6ff9a21db6c2d494c6b","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"abcc0fe7-a4e6-4f28-bae8-c0dde728c4b8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931184.2358856} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aa553f5c-62d5-4bfa-88d4-86b8313fa179","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931184.2362034} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"15b0c07c8ad4f6ff9a21db6c2d494c6b","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:24.235849442Z"}]},"request_id":"2bccfb1b-29fd-4705-a715-bb2c3a2da253","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931184.240969} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"15b0c07c8ad4f6ff9a21db6c2d494c6b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"15b0c07c8ad4f6ff9a21db6c2d494c6b"} gateway-1 | {"time_local":"21/Sep/2024:15:06:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"15b0c07c8ad4f6ff9a21db6c2d494c6b"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"15b0c07c8ad4f6ff9a21db6c2d494c6b","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE","level":"info","message":"auth send jwt","requestID":"a1146b7fa51663a9a87d23c6ec979600"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a1146b7fa51663a9a87d23c6ec979600","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a1146b7fa51663a9a87d23c6ec979600"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1350,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1350,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.817131,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a1146b7fa51663a9a87d23c6ec979600","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931184,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a1146b7fa51663a9a87d23c6ec979600","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17ab8d35-cfeb-453a-a660-9fe128804b3e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"eb30efd4-4ad4-4b88-9ad6-36e09f1480d5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931184.2682352} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a1146b7fa51663a9a87d23c6ec979600","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3cebe4e1-4cdf-4a49-84a3-9f305a6df626","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931184.2735257} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a1146b7fa51663a9a87d23c6ec979600","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17ab8d35-cfeb-453a-a660-9fe128804b3e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"8105e94a-65d7-4c40-80e2-a767d7a3d091","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931184.2903516} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"798f5140-0637-453f-913b-c8053db8a5d3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931184.2905738} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"a1146b7fa51663a9a87d23c6ec979600","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17ab8d35-cfeb-453a-a660-9fe128804b3e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17ab8d35-cfeb-453a-a660-9fe128804b3e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:24.290304475Z"}]},"request_id":"967ec7af-6253-457f-8f53-dc0c6ad36813","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931184.2955005} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a1146b7fa51663a9a87d23c6ec979600","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a1146b7fa51663a9a87d23c6ec979600"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"a1146b7fa51663a9a87d23c6ec979600","responseTime":49,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a1146b7fa51663a9a87d23c6ec979600"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE","level":"info","message":"auth send jwt","requestID":"81664e0ab92be4bf2532ca407fa8e60c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"81664e0ab92be4bf2532ca407fa8e60c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"81664e0ab92be4bf2532ca407fa8e60c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE","level":"info","message":"auth send jwt","requestID":"48531abe7c858c104f78d369456b30fb"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1351,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:24Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"48531abe7c858c104f78d369456b30fb","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1351,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.736971,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"81664e0ab92be4bf2532ca407fa8e60c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931184,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"48531abe7c858c104f78d369456b30fb"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"81664e0ab92be4bf2532ca407fa8e60c","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1352,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1352,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.794067,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"48531abe7c858c104f78d369456b30fb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931184,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"48531abe7c858c104f78d369456b30fb","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:24.235849442Z"}]},"request_id":"b06c504a-fcd9-4ea5-9021-6fd937ee1208","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931184.769635} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"81664e0ab92be4bf2532ca407fa8e60c","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17ab8d35-cfeb-453a-a660-9fe128804b3e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17ab8d35-cfeb-453a-a660-9fe128804b3e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:24.290304475Z"}]},"request_id":"2336a5b7-2118-42f6-b846-7a0e7f83fab3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931184.7731144} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"48531abe7c858c104f78d369456b30fb","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ecc3ac98-7f58-4d9d-b846-e0fdd5463f50","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931184.7747638} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"81664e0ab92be4bf2532ca407fa8e60c","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eb4c0398-64ff-45fb-b239-3e9cf0452987","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931184.77902} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"48531abe7c858c104f78d369456b30fb","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:24.235849442Z"}]},"request_id":"94ab1e16-2575-4928-885a-d1623889cab0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931184.7855592} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"81664e0ab92be4bf2532ca407fa8e60c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"81664e0ab92be4bf2532ca407fa8e60c"} gateway-1 | {"time_local":"21/Sep/2024:15:06:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.032","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"81664e0ab92be4bf2532ca407fa8e60c"} device-1 | {"level":"info","message":"PATCH /devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a 200 28ms","method":"PATCH","requestID":"81664e0ab92be4bf2532ca407fa8e60c","responseTime":28,"status":200,"url":"/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE","level":"info","message":"auth send jwt","requestID":"fdcef21d184b7f7e6b2c818b9ab2ed5c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"fdcef21d184b7f7e6b2c818b9ab2ed5c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"fdcef21d184b7f7e6b2c818b9ab2ed5c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1353,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1353,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.343461,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"fdcef21d184b7f7e6b2c818b9ab2ed5c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931184,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fdcef21d184b7f7e6b2c818b9ab2ed5c","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17ab8d35-cfeb-453a-a660-9fe128804b3e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17ab8d35-cfeb-453a-a660-9fe128804b3e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:24.290304475Z"}]},"request_id":"1483a2cd-a651-4888-8101-2dc9b0f105ee","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931184.7973506} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"48531abe7c858c104f78d369456b30fb","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"48531abe7c858c104f78d369456b30fb"} gateway-1 | {"time_local":"21/Sep/2024:15:06:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/17ab8d35-cfeb-453a-a660-9fe128804b3e HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.043","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"48531abe7c858c104f78d369456b30fb"} device-1 | {"level":"info","message":"PATCH /devices/17ab8d35-cfeb-453a-a660-9fe128804b3e 200 38ms","method":"PATCH","requestID":"48531abe7c858c104f78d369456b30fb","responseTime":38,"status":200,"url":"/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE","level":"info","message":"auth send jwt","requestID":"f88350ddb8aac8cf4d44dafc071b5a02"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f88350ddb8aac8cf4d44dafc071b5a02","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f88350ddb8aac8cf4d44dafc071b5a02"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1354,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:24Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"fdcef21d184b7f7e6b2c818b9ab2ed5c"} gateway-1 | {"time_local":"21/Sep/2024:15:06:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"fdcef21d184b7f7e6b2c818b9ab2ed5c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1354,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.910671,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:24Z"} device-1 | {"level":"info","message":"POST /devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a/websocket 200 17ms","method":"POST","requestID":"fdcef21d184b7f7e6b2c818b9ab2ed5c","responseTime":17,"status":200,"url":"/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a/websocket"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f88350ddb8aac8cf4d44dafc071b5a02","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931184,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f88350ddb8aac8cf4d44dafc071b5a02","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f88350ddb8aac8cf4d44dafc071b5a02"} device-1 | {"level":"info","message":"POST /devices/17ab8d35-cfeb-453a-a660-9fe128804b3e/websocket 200 24ms","method":"POST","requestID":"f88350ddb8aac8cf4d44dafc071b5a02","responseTime":24,"status":200,"url":"/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:06:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/17ab8d35-cfeb-453a-a660-9fe128804b3e/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f88350ddb8aac8cf4d44dafc071b5a02"} device-1 | {"level":"info","message":"device 'http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE","level":"info","message":"auth send jwt","requestID":"6bb95866bda5ee106ba2f851a5959468"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6bb95866bda5ee106ba2f851a5959468","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6bb95866bda5ee106ba2f851a5959468"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1355,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1355,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.759039,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"6bb95866bda5ee106ba2f851a5959468","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931184,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6bb95866bda5ee106ba2f851a5959468","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:24.235849442Z"}]},"request_id":"1f23e00f-5d82-484d-bd67-0c65e89a945f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931184.8553176} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6bb95866bda5ee106ba2f851a5959468","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6bb95866bda5ee106ba2f851a5959468"} device-1 | {"level":"info","message":"GET /devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a? 200 12ms","method":"GET","requestID":"6bb95866bda5ee106ba2f851a5959468","responseTime":12,"status":200,"url":"/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6bb95866bda5ee106ba2f851a5959468"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE","level":"info","message":"auth send jwt","requestID":"5367b9e6ff805b2f80bc74fb998efc3d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5367b9e6ff805b2f80bc74fb998efc3d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5367b9e6ff805b2f80bc74fb998efc3d"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1356,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1356,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.271384,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"5367b9e6ff805b2f80bc74fb998efc3d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931184,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5367b9e6ff805b2f80bc74fb998efc3d","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17ab8d35-cfeb-453a-a660-9fe128804b3e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17ab8d35-cfeb-453a-a660-9fe128804b3e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:24.290304475Z"}]},"request_id":"462839c9-493a-4b6d-8e4e-ec9d2a80549b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931184.874599} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5367b9e6ff805b2f80bc74fb998efc3d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5367b9e6ff805b2f80bc74fb998efc3d"} device-1 | {"level":"info","message":"GET /devices/17ab8d35-cfeb-453a-a660-9fe128804b3e? 200 15ms","method":"GET","requestID":"5367b9e6ff805b2f80bc74fb998efc3d","responseTime":15,"status":200,"url":"/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/17ab8d35-cfeb-453a-a660-9fe128804b3e? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5367b9e6ff805b2f80bc74fb998efc3d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE","level":"info","message":"auth send jwt","requestID":"2177ad11aeaf56ba5a0074a2e3aedabf"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2177ad11aeaf56ba5a0074a2e3aedabf","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"2177ad11aeaf56ba5a0074a2e3aedabf"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1357,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1357,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.219566,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"2177ad11aeaf56ba5a0074a2e3aedabf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931184,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2177ad11aeaf56ba5a0074a2e3aedabf","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0"},"level":"info","message":"Attempting to run experiment","requestID":"2177ad11aeaf56ba5a0074a2e3aedabf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0"},"level":"info","message":"Attempting to book experiment","requestID":"2177ad11aeaf56ba5a0074a2e3aedabf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0"},"level":"info","message":"Successfully booked experiment","requestID":"2177ad11aeaf56ba5a0074a2e3aedabf"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"11cbf200-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"11cc1910-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1358,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1358,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.828274,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"11cbf200-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931184,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"11cbf200-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Received request.","req_id":1359,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Sent response.","req_id":1359,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.597286,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"11cc1910-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931184,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"11cc1910-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:24.235849442Z"}]},"request_id":"08b3dbe6-26f0-4362-93da-a3aa7a3d6a1f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931184.9396787} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"11cbf200-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17ab8d35-cfeb-453a-a660-9fe128804b3e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17ab8d35-cfeb-453a-a660-9fe128804b3e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:24.290304475Z"}]},"request_id":"dae43254-9868-48ed-9c5c-6e5e05490be4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931184.9413502} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"11cc1910-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"11cbf200-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a? 200 20ms","method":"GET","requestID":"11cbf200-782b-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"11cc1910-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/17ab8d35-cfeb-453a-a660-9fe128804b3e? 200 20ms","method":"GET","requestID":"11cc1910-782b-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0"},"level":"info","message":"Setting up experiment","requestID":"2177ad11aeaf56ba5a0074a2e3aedabf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"2177ad11aeaf56ba5a0074a2e3aedabf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0"},"level":"info","message":"Successfully locked booking for experiment","requestID":"2177ad11aeaf56ba5a0074a2e3aedabf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"2177ad11aeaf56ba5a0074a2e3aedabf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"2177ad11aeaf56ba5a0074a2e3aedabf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0"},"level":"info","message":"Attempting to update booking for experiment","requestID":"2177ad11aeaf56ba5a0074a2e3aedabf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0"},"level":"info","message":"Successfully updated booking for experiment","requestID":"2177ad11aeaf56ba5a0074a2e3aedabf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0"},"level":"info","message":"Successfully set up experiment","requestID":"2177ad11aeaf56ba5a0074a2e3aedabf"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"11d71590-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"11d78ac0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"11d7d8e0-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0"},"level":"info","message":"Successfully running experiment","requestID":"2177ad11aeaf56ba5a0074a2e3aedabf"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1360,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:25Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1360,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.72667,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:25Z"} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Received request.","req_id":1361,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"11d71590-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931184,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"11d71590-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Sent response.","req_id":1361,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.700891,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"11d78ac0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931184,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"11d78ac0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1362,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:25Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1362,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.775365,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:25Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"35032c17-4b64-40cb-9f0b-e2bc38a196c3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931185.0132565} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:24.235849442Z"}]},"request_id":"ebbf0e04-1876-4b39-8e1e-5b04280cf016","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931185.0162923} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"11d7d8e0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"11d7d8e0-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"11d71590-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17ab8d35-cfeb-453a-a660-9fe128804b3e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17ab8d35-cfeb-453a-a660-9fe128804b3e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:24.290304475Z"}]},"request_id":"0ca9de26-9aea-4047-a96c-cb1e083e4b34","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931185.0186634} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"11d78ac0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"11d7d8e0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a/signaling 200 18ms","method":"POST","requestID":"11d7d8e0-782b-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"11d71590-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a? 200 24ms","method":"GET","requestID":"11d71590-782b-11ef-88d4-5fea3f61bb98","responseTime":24,"status":200,"url":"/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"11d78ac0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/17ab8d35-cfeb-453a-a660-9fe128804b3e? 200 21ms","method":"GET","requestID":"11d78ac0-782b-11ef-88d4-5fea3f61bb98","responseTime":21,"status":200,"url":"/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"11dae620-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"11db0d30-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1363,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:25Z"} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Received request.","req_id":1364,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:25Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17ab8d35-cfeb-453a-a660-9fe128804b3e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"96cd8da6-3904-49be-8f4c-333ff2906096","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931185.031223} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4b97f8d0-fcb7-4c8f-9c0c-67ede418437d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931185.0312765} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Sent response.","req_id":1364,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.188066,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:25Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1363,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.31986,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"11db0d30-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"11db0d30-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"11dae620-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"11dae620-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F01ebd61c-ee5b-4526-bcbf-7155f0559ed0#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F01ebd61c-ee5b-4526-bcbf-7155f0559ed0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"88466cee-13e4-420f-bbb5-45b016fc2e82","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931185.0332642} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e4899504-4822-4397-8cdd-7cc1da77b2b9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931185.0334773} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"2177ad11aeaf56ba5a0074a2e3aedabf","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"11db0d30-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a/signaling 200 10ms","method":"POST","requestID":"11db0d30-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"11dae620-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/17ab8d35-cfeb-453a-a660-9fe128804b3e/signaling 200 11ms","method":"POST","requestID":"11dae620-782b-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"11dd3010-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"2177ad11aeaf56ba5a0074a2e3aedabf"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1365,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:25Z"} experiment-1 | {"level":"info","message":"POST /experiments? 201 157ms","method":"POST","requestID":"2177ad11aeaf56ba5a0074a2e3aedabf","responseTime":157,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1220","request_time":"0.164","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2177ad11aeaf56ba5a0074a2e3aedabf"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17ab8d35-cfeb-453a-a660-9fe128804b3e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"561361ad-4f39-42c8-99ed-f0940d5c7aeb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931185.0461152} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1365,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.713327,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"11dd3010-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"11dd3010-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NX0.r7QBF56pPKPr4Xxx-3Kbl-VUzJs8DtehDn6QB137c-0","level":"info","message":"auth send jwt","requestID":"1e31fb0c88f3ef823c247deed658a4a3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1e31fb0c88f3ef823c247deed658a4a3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1e31fb0c88f3ef823c247deed658a4a3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"11dd3010-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/17ab8d35-cfeb-453a-a660-9fe128804b3e/signaling 200 11ms","method":"POST","requestID":"11dd3010-782b-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1366,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:25Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"2177ad11aeaf56ba5a0074a2e3aedabf"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1366,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.904812,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:25Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"11df2be0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1e31fb0c88f3ef823c247deed658a4a3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931185,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NX0.r7QBF56pPKPr4Xxx-3Kbl-VUzJs8DtehDn6QB137c-0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1e31fb0c88f3ef823c247deed658a4a3","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"11df7a00-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1367,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:25Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1367,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.857532,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:25Z"} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Received request.","req_id":1368,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:25Z"} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Sent response.","req_id":1368,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.770746,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"11df2be0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931184,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"11df2be0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"11df7a00-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931184,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"11df7a00-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:24.235849442Z"}]},"request_id":"ad02ec5a-fbdd-4b00-a5c7-c816929cdc6f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931185.05953} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1e31fb0c88f3ef823c247deed658a4a3","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:24.235849442Z"}]},"request_id":"4380267e-67bb-4f52-a7f4-67c5e5cd3c7a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931185.063078} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1e31fb0c88f3ef823c247deed658a4a3"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"11df2be0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a? 200 13ms","method":"GET","requestID":"1e31fb0c88f3ef823c247deed658a4a3","responseTime":13,"status":200,"url":"/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1e31fb0c88f3ef823c247deed658a4a3"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17ab8d35-cfeb-453a-a660-9fe128804b3e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17ab8d35-cfeb-453a-a660-9fe128804b3e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:24.290304475Z"}]},"request_id":"427d41bb-9380-42bb-8464-10888a79462e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931185.0637336} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"11df7a00-782b-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"11df2be0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a? 200 13ms","method":"GET","requestID":"11df2be0-782b-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"11df7a00-782b-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NX0.r7QBF56pPKPr4Xxx-3Kbl-VUzJs8DtehDn6QB137c-0","level":"info","message":"auth send jwt","requestID":"4d4ed51668d23f830e0f56c2db16ebae"} device-1 | {"level":"info","message":"GET /devices/17ab8d35-cfeb-453a-a660-9fe128804b3e? 200 12ms","method":"GET","requestID":"11df7a00-782b-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e?"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4d4ed51668d23f830e0f56c2db16ebae","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0"},"level":"info","message":"Building connection plan","requestID":"2177ad11aeaf56ba5a0074a2e3aedabf"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4d4ed51668d23f830e0f56c2db16ebae"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"85147ff8-e652-40ef-a82e-fef719ed2eaa"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"57142e9b-eefa-43cd-b42a-d3130496ca39"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"b73f8424-3760-446e-8538-b8f812294eef"}]},"level":"info","message":"Built pairwise service configurations","requestID":"2177ad11aeaf56ba5a0074a2e3aedabf"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"2177ad11aeaf56ba5a0074a2e3aedabf"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"11e19ce0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1369,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:25Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1369,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.650103,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:25Z"} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Received request.","req_id":1370,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"4d4ed51668d23f830e0f56c2db16ebae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931185,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NX0.r7QBF56pPKPr4Xxx-3Kbl-VUzJs8DtehDn6QB137c-0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4d4ed51668d23f830e0f56c2db16ebae","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49818","level":"info","msg":"Sent response.","req_id":1370,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.706716,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"11e19ce0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931184,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4NH0.7fKDBxcNfm16Bp0fLugMu3JJY3Ld5Zl9oKg3IP9m5bE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"11e19ce0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17ab8d35-cfeb-453a-a660-9fe128804b3e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17ab8d35-cfeb-453a-a660-9fe128804b3e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:24.290304475Z"}]},"request_id":"795f1064-74d1-4c29-ac8a-307002a572f8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931185.0760229} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4d4ed51668d23f830e0f56c2db16ebae","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4d4ed51668d23f830e0f56c2db16ebae"} device-1 | {"level":"info","message":"GET /devices/17ab8d35-cfeb-453a-a660-9fe128804b3e? 200 10ms","method":"GET","requestID":"4d4ed51668d23f830e0f56c2db16ebae","responseTime":10,"status":200,"url":"/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/17ab8d35-cfeb-453a-a660-9fe128804b3e? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4d4ed51668d23f830e0f56c2db16ebae"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"1485f2ec-bb78-4834-bd10-b374eaa4d4f9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931185.082088} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0f5350f3-073e-4a11-8252-f7dfd98b77b1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931185.0824645} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"11e19ce0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"11e19ce0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"11e19ce0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/c438d8e5-1cb5-427a-8427-1a6d290eefde'","requestID":"11e19ce0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/c438d8e5-1cb5-427a-8427-1a6d290eefde'","requestID":"11e19ce0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"11e19ce0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"11e19ce0-782b-11ef-88d4-5fea3f61bb98","responseTime":25,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"11e19ce0-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"2177ad11aeaf56ba5a0074a2e3aedabf"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"11e8efe0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1371,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:25Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ba70d9b2-d3e6-4663-ad5e-53b0cdec38c7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931185.1226768} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1371,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.377435,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"11e8efe0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"11e8efe0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"11e8efe0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a/signaling 200 9ms","method":"POST","requestID":"11e8efe0-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"11ea7680-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1372,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:25Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17ab8d35-cfeb-453a-a660-9fe128804b3e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e66b7902-bff9-4e57-a4b3-45d6787b81dc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931185.1343215} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1372,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.801804,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"11ea7680-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"11ea7680-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"11ea7680-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/17ab8d35-cfeb-453a-a660-9fe128804b3e/signaling 200 10ms","method":"POST","requestID":"11ea7680-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e/signaling"} device-1 | {"device":"17ab8d35-cfeb-453a-a660-9fe128804b3e","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"c438d8e5-1cb5-427a-8427-1a6d290eefde","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"c438d8e5-1cb5-427a-8427-1a6d290eefde","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c438d8e5-1cb5-427a-8427-1a6d290eefde' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c438d8e5-1cb5-427a-8427-1a6d290eefde","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"93a40944218ee63aad947dd42afd6f27","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"93a40944218ee63aad947dd42afd6f27","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/c438d8e5-1cb5-427a-8427-1a6d290eefde"}}},"level":"info","message":"received a callback","requestID":"93a40944218ee63aad947dd42afd6f27"} device-1 | {"device":"17ab8d35-cfeb-453a-a660-9fe128804b3e","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"17ab8d35-cfeb-453a-a660-9fe128804b3e","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"17ab8d35-cfeb-453a-a660-9fe128804b3e","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"93a40944218ee63aad947dd42afd6f27","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"93a40944218ee63aad947dd42afd6f27"} device-1 | {"data":{"peerconnection":"c438d8e5-1cb5-427a-8427-1a6d290eefde","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"17ab8d35-cfeb-453a-a660-9fe128804b3e","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"17ab8d35-cfeb-453a-a660-9fe128804b3e","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"c438d8e5-1cb5-427a-8427-1a6d290eefde","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c438d8e5-1cb5-427a-8427-1a6d290eefde' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c438d8e5-1cb5-427a-8427-1a6d290eefde","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8a02ff383b89a33f9e54c5415d793f3d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8a02ff383b89a33f9e54c5415d793f3d","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/c438d8e5-1cb5-427a-8427-1a6d290eefde"}}},"level":"info","message":"received a callback","requestID":"8a02ff383b89a33f9e54c5415d793f3d"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"13271530-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1373,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:27Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc438d8e5-1cb5-427a-8427-1a6d290eefde","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f13ea270-93af-4d54-9349-6f79ef4672d0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931187.2096763} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1373,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.762024,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c438d8e5-1cb5-427a-8427-1a6d290eefde","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"13271530-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/c438d8e5-1cb5-427a-8427-1a6d290eefde","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"13271530-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"13271530-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/c438d8e5-1cb5-427a-8427-1a6d290eefde 200 12ms","method":"GET","requestID":"13271530-782b-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/peerconnections/c438d8e5-1cb5-427a-8427-1a6d290eefde"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 47ms","method":"POST","requestID":"8a02ff383b89a33f9e54c5415d793f3d","responseTime":47,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch","requestID":"8a02ff383b89a33f9e54c5415d793f3d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"132d2fb0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1374,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:27Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4a215780-25f5-4490-bb8b-018d54ddf644","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931187.2509701} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1374,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.417385,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"132d2fb0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"132d2fb0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"132d2fb0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a/signaling 200 15ms","method":"POST","requestID":"132d2fb0-782b-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"132fc7c0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1375,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:27Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17ab8d35-cfeb-453a-a660-9fe128804b3e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"39d0117b-38bb-4437-a746-7d952f9837f7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931187.267329} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1375,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.925247,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"132fc7c0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"132fc7c0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"132fc7c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/17ab8d35-cfeb-453a-a660-9fe128804b3e/signaling 200 13ms","method":"POST","requestID":"132fc7c0-782b-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4N30.cxASTdLcqP03LdLHAzIflXgzhipFOflP2pUA-hXgoAA","level":"info","message":"auth send jwt","requestID":"ec31771f582b17cd8b859ee06aa4c421"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ec31771f582b17cd8b859ee06aa4c421","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0","requestID":"ec31771f582b17cd8b859ee06aa4c421"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1376,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1376,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.187444,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"ec31771f582b17cd8b859ee06aa4c421","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931187,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4N30.cxASTdLcqP03LdLHAzIflXgzhipFOflP2pUA-hXgoAA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ec31771f582b17cd8b859ee06aa4c421","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0","requestID":"ec31771f582b17cd8b859ee06aa4c421"} experiment-1 | {"level":"info","message":"GET /experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0 200 15ms","method":"GET","requestID":"ec31771f582b17cd8b859ee06aa4c421","responseTime":15,"status":200,"url":"/experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0"} gateway-1 | {"time_local":"21/Sep/2024:15:06:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0 HTTP/1.1","status": "200","body_bytes_sent":"1293","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ec31771f582b17cd8b859ee06aa4c421"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4N30.cxASTdLcqP03LdLHAzIflXgzhipFOflP2pUA-hXgoAA","level":"info","message":"auth send jwt","requestID":"4cd04f080916814747a38f337f5a9eb2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4cd04f080916814747a38f337f5a9eb2","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0","requestID":"4cd04f080916814747a38f337f5a9eb2"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1377,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1377,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.543292,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:27Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"4cd04f080916814747a38f337f5a9eb2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931187,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4N30.cxASTdLcqP03LdLHAzIflXgzhipFOflP2pUA-hXgoAA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4cd04f080916814747a38f337f5a9eb2","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0"},"level":"info","message":"Attempting to finish experiment","requestID":"4cd04f080916814747a38f337f5a9eb2"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"133ac440-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1378,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1378,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.178693,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:27Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c438d8e5-1cb5-427a-8427-1a6d290eefde","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"133ac440-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/c438d8e5-1cb5-427a-8427-1a6d290eefde","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931187,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4N30.cxASTdLcqP03LdLHAzIflXgzhipFOflP2pUA-hXgoAA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"133ac440-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"device":"48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"17ab8d35-cfeb-453a-a660-9fe128804b3e","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"17ab8d35-cfeb-453a-a660-9fe128804b3e","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"17ab8d35-cfeb-453a-a660-9fe128804b3e","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c438d8e5-1cb5-427a-8427-1a6d290eefde' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/c438d8e5-1cb5-427a-8427-1a6d290eefde' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c438d8e5-1cb5-427a-8427-1a6d290eefde","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc438d8e5-1cb5-427a-8427-1a6d290eefde': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc438d8e5-1cb5-427a-8427-1a6d290eefde","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"edb64ce2-fb3a-414d-9b8c-004a1a2382f9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931187.355339} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"44055312-04af-43cc-82dd-b9964665e7fe","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931187.3559468} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d05d160372729e09a937d2380e9ad7a7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"133ac440-782b-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d05d160372729e09a937d2380e9ad7a7","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c08e368f18b26b60aa3cfed97f4d18e0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c08e368f18b26b60aa3cfed97f4d18e0","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c438d8e5-1cb5-427a-8427-1a6d290eefde"}}},"level":"info","message":"received a callback","requestID":"d05d160372729e09a937d2380e9ad7a7"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c438d8e5-1cb5-427a-8427-1a6d290eefde"}}},"level":"info","message":"received a callback","requestID":"c08e368f18b26b60aa3cfed97f4d18e0"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"133ac440-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/c438d8e5-1cb5-427a-8427-1a6d290eefde 204 46ms","method":"DELETE","requestID":"133ac440-782b-11ef-88d4-5fea3f61bb98","responseTime":46,"status":204,"url":"/peerconnections/c438d8e5-1cb5-427a-8427-1a6d290eefde"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0"},"level":"info","message":"Successfully finished experiment","requestID":"4cd04f080916814747a38f337f5a9eb2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1344fd70-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1379,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:27Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ee98820a-335b-4c53-b878-ee597cbb949a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931187.4064286} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1379,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.120185,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1344fd70-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"1344fd70-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1344fd70-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F01ebd61c-ee5b-4526-bcbf-7155f0559ed0': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F01ebd61c-ee5b-4526-bcbf-7155f0559ed0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"18f67fa4-78cb-4767-a7a0-68cee2731410","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931187.4127474} device-1 | {"level":"info","message":"POST /devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a/signaling 200 14ms","method":"POST","requestID":"1344fd70-782b-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e1c898bd-af9e-403c-981d-28f7741d70c6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931187.4130774} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"4cd04f080916814747a38f337f5a9eb2","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1347bc90-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1380,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:27Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17ab8d35-cfeb-453a-a660-9fe128804b3e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"60151958-06fd-4558-bc2c-68b678f7dcbb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931187.4242496} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1380,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":7.506458,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1347bc90-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"1347bc90-782b-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1347bc90-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/17ab8d35-cfeb-453a-a660-9fe128804b3e/signaling 200 19ms","method":"POST","requestID":"1347bc90-782b-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0","requestID":"4cd04f080916814747a38f337f5a9eb2"} gateway-1 | {"time_local":"21/Sep/2024:15:06:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.173","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4cd04f080916814747a38f337f5a9eb2"} experiment-1 | {"level":"info","message":"DELETE /experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0 204 168ms","method":"DELETE","requestID":"4cd04f080916814747a38f337f5a9eb2","responseTime":168,"status":204,"url":"/experiments/01ebd61c-ee5b-4526-bcbf-7155f0559ed0"} gateway-1 | {"time_local":"21/Sep/2024:15:06:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3094","request_time":"2.672","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"6855bb3cbc7c06b15017ccc436776ec3"} gateway-1 | {"time_local":"21/Sep/2024:15:06:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3092","request_time":"2.652","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"fdf63497b595fd5ef485911fe22f10cd"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"d05d160372729e09a937d2380e9ad7a7","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.131","http_referrer":"","http_user_agent":"node-fetch","requestID":"d05d160372729e09a937d2380e9ad7a7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4N30.cxASTdLcqP03LdLHAzIflXgzhipFOflP2pUA-hXgoAA","level":"info","message":"auth send jwt","requestID":"42ed18bb30d2073da3bfe1abfd1af232"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"42ed18bb30d2073da3bfe1abfd1af232","responseTime":4,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/17ab8d35-cfeb-453a-a660-9fe128804b3e' closed"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"c08e368f18b26b60aa3cfed97f4d18e0","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.135","http_referrer":"","http_user_agent":"node-fetch","requestID":"c08e368f18b26b60aa3cfed97f4d18e0"} device-1 | {"level":"info","message":"postDevices called","requestID":"42ed18bb30d2073da3bfe1abfd1af232"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1381,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1381,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.019787,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"42ed18bb30d2073da3bfe1abfd1af232","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931187,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4N30.cxASTdLcqP03LdLHAzIflXgzhipFOflP2pUA-hXgoAA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"42ed18bb30d2073da3bfe1abfd1af232","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/48820d9e-0573-4ce4-a5c2-5ef13b42fd5a' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d193c4c-c13f-4a6f-9200-786dc6eed7e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1875decd-b078-420e-a03b-4d7848fc3dbd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931187.5127017} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"42ed18bb30d2073da3bfe1abfd1af232","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6cff1155-7bca-471b-ba55-d967eacd2684","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931187.517756} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"42ed18bb30d2073da3bfe1abfd1af232","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d193c4c-c13f-4a6f-9200-786dc6eed7e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"dd62d534-e926-43d9-96f9-ebd8483fb0c9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931187.5284817} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"80daffb8-083c-45d9-85d5-98ce8405281c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931187.5286932} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"42ed18bb30d2073da3bfe1abfd1af232","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d193c4c-c13f-4a6f-9200-786dc6eed7e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d193c4c-c13f-4a6f-9200-786dc6eed7e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:27.528444133Z"}]},"request_id":"a783774f-9619-4095-948c-df43e82173b3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931187.5342264} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"42ed18bb30d2073da3bfe1abfd1af232","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"42ed18bb30d2073da3bfe1abfd1af232"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"42ed18bb30d2073da3bfe1abfd1af232","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"42ed18bb30d2073da3bfe1abfd1af232"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4N30.cxASTdLcqP03LdLHAzIflXgzhipFOflP2pUA-hXgoAA","level":"info","message":"auth send jwt","requestID":"939e94a1137e4048cca8a0a14e4bda3d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"939e94a1137e4048cca8a0a14e4bda3d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"939e94a1137e4048cca8a0a14e4bda3d"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1382,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1382,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.797759,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"939e94a1137e4048cca8a0a14e4bda3d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931187,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4N30.cxASTdLcqP03LdLHAzIflXgzhipFOflP2pUA-hXgoAA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"939e94a1137e4048cca8a0a14e4bda3d","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d00f8d5-ac30-409f-a849-1cbd8f13e988","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"efd821a1-43ce-4051-9f2d-043271ae276a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931187.5589929} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"939e94a1137e4048cca8a0a14e4bda3d","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dd57e70d-e463-4ade-9f2c-d6ab5c8415de","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931187.5641053} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"939e94a1137e4048cca8a0a14e4bda3d","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d00f8d5-ac30-409f-a849-1cbd8f13e988","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"1944b9c5-1b3b-4ba5-bb2c-addbfe5c646b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931187.5804133} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aef049ac-7273-487a-9d22-bf8cc438076d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931187.5806828} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"939e94a1137e4048cca8a0a14e4bda3d","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d00f8d5-ac30-409f-a849-1cbd8f13e988","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d00f8d5-ac30-409f-a849-1cbd8f13e988","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:27.580373429Z"}]},"request_id":"3edf4016-b08c-4975-82c3-aedfc810d787","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931187.5854304} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"939e94a1137e4048cca8a0a14e4bda3d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"939e94a1137e4048cca8a0a14e4bda3d"} gateway-1 | {"time_local":"21/Sep/2024:15:06:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"939e94a1137e4048cca8a0a14e4bda3d"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"939e94a1137e4048cca8a0a14e4bda3d","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"40d72a843ebbf88a7f89fa6ba5109227","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"40d72a843ebbf88a7f89fa6ba5109227","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"40d72a843ebbf88a7f89fa6ba5109227"} device-1 | {"level":"info","message":"OPTIONS /devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8/websocket 200 1ms","method":"OPTIONS","requestID":"40d72a843ebbf88a7f89fa6ba5109227","responseTime":1,"status":200,"url":"/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4OX0.gS8pxdyMkf4CRuHVoPjAX_fNiE4l82yPpYdL6NoIHRA","level":"info","message":"auth send jwt","requestID":"b1abeed60c41ce860f871885090d14b6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b1abeed60c41ce860f871885090d14b6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b1abeed60c41ce860f871885090d14b6"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1383,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1383,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.247091,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b1abeed60c41ce860f871885090d14b6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931189,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4OX0.gS8pxdyMkf4CRuHVoPjAX_fNiE4l82yPpYdL6NoIHRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b1abeed60c41ce860f871885090d14b6","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e052914c1d804b9441967ede8cacd13b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e052914c1d804b9441967ede8cacd13b","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e052914c1d804b9441967ede8cacd13b"} device-1 | {"level":"info","message":"OPTIONS /devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988/websocket 200 1ms","method":"OPTIONS","requestID":"e052914c1d804b9441967ede8cacd13b","responseTime":1,"status":200,"url":"/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b1abeed60c41ce860f871885090d14b6"} gateway-1 | {"time_local":"21/Sep/2024:15:06:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b1abeed60c41ce860f871885090d14b6"} device-1 | {"level":"info","message":"POST /devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8/websocket 200 22ms","method":"POST","requestID":"b1abeed60c41ce860f871885090d14b6","responseTime":22,"status":200,"url":"/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4OX0.gS8pxdyMkf4CRuHVoPjAX_fNiE4l82yPpYdL6NoIHRA","level":"info","message":"auth send jwt","requestID":"4862e41586dbd0d74cbefb058f68dfe3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4862e41586dbd0d74cbefb058f68dfe3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4862e41586dbd0d74cbefb058f68dfe3"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1384,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1384,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.115697,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"4862e41586dbd0d74cbefb058f68dfe3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931189,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4OX0.gS8pxdyMkf4CRuHVoPjAX_fNiE4l82yPpYdL6NoIHRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4862e41586dbd0d74cbefb058f68dfe3","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4862e41586dbd0d74cbefb058f68dfe3"} gateway-1 | {"time_local":"21/Sep/2024:15:06:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.030","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4862e41586dbd0d74cbefb058f68dfe3"} device-1 | {"level":"info","message":"POST /devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988/websocket 200 25ms","method":"POST","requestID":"4862e41586dbd0d74cbefb058f68dfe3","responseTime":25,"status":200,"url":"/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"392ebfce844d43a4d4bc45c8784030f3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"392ebfce844d43a4d4bc45c8784030f3","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"392ebfce844d43a4d4bc45c8784030f3"} device-1 | {"level":"info","message":"OPTIONS /devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8? 200 1ms","method":"OPTIONS","requestID":"392ebfce844d43a4d4bc45c8784030f3","responseTime":1,"status":200,"url":"/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8?"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4OX0.gS8pxdyMkf4CRuHVoPjAX_fNiE4l82yPpYdL6NoIHRA","level":"info","message":"auth send jwt","requestID":"b1e053a166a933914ce7037d29c170ed"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b1e053a166a933914ce7037d29c170ed","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b1e053a166a933914ce7037d29c170ed"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1385,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1385,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.117441,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b1e053a166a933914ce7037d29c170ed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931189,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4OX0.gS8pxdyMkf4CRuHVoPjAX_fNiE4l82yPpYdL6NoIHRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b1e053a166a933914ce7037d29c170ed","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d193c4c-c13f-4a6f-9200-786dc6eed7e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d193c4c-c13f-4a6f-9200-786dc6eed7e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:27.528444133Z"}]},"request_id":"4a81fcac-a842-41f3-b905-91421f29ed72","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931189.6539004} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b1e053a166a933914ce7037d29c170ed","responseTime":3,"status":200,"url":"/relations/query"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c72cacc1ca4dca72286a69e8650d6ff0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c72cacc1ca4dca72286a69e8650d6ff0","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"32115935-7af2-4b80-8092-df99f9a44122","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931189.659807} device-1 | {"level":"info","message":"OPTIONS /devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988? 200 1ms","method":"OPTIONS","requestID":"c72cacc1ca4dca72286a69e8650d6ff0","responseTime":1,"status":200,"url":"/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c72cacc1ca4dca72286a69e8650d6ff0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"b1e053a166a933914ce7037d29c170ed","responseTime":4,"status":200,"url":"/relations/update"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4OX0.gS8pxdyMkf4CRuHVoPjAX_fNiE4l82yPpYdL6NoIHRA","level":"info","message":"auth send jwt","requestID":"abd013937db3d7629eb64c371502a481"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"abd013937db3d7629eb64c371502a481","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"abd013937db3d7629eb64c371502a481"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1386,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1386,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.04594,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"abd013937db3d7629eb64c371502a481","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931189,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4OX0.gS8pxdyMkf4CRuHVoPjAX_fNiE4l82yPpYdL6NoIHRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"abd013937db3d7629eb64c371502a481","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d193c4c-c13f-4a6f-9200-786dc6eed7e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d193c4c-c13f-4a6f-9200-786dc6eed7e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:27.528444133Z"}]},"request_id":"97748ec1-ecc6-4d03-a9a0-76b57d9e3198","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931189.674482} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b1e053a166a933914ce7037d29c170ed","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b1e053a166a933914ce7037d29c170ed"} gateway-1 | {"time_local":"21/Sep/2024:15:06:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.041","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b1e053a166a933914ce7037d29c170ed"} device-1 | {"level":"info","message":"PATCH /devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8? 200 34ms","method":"PATCH","requestID":"b1e053a166a933914ce7037d29c170ed","responseTime":34,"status":200,"url":"/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d00f8d5-ac30-409f-a849-1cbd8f13e988","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d00f8d5-ac30-409f-a849-1cbd8f13e988","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:27.580373429Z"}]},"request_id":"f32c3a7f-8f38-4569-8f79-628b19c7ab9f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931189.683489} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"abd013937db3d7629eb64c371502a481","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"29ece0f5-1adf-4481-a6f9-454f96d2ac35","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931189.6899202} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"abd013937db3d7629eb64c371502a481","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d00f8d5-ac30-409f-a849-1cbd8f13e988","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d00f8d5-ac30-409f-a849-1cbd8f13e988","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:27.580373429Z"}]},"request_id":"642ff9df-1a4a-4108-8dfd-f2d0e8ca688d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931189.7041655} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"abd013937db3d7629eb64c371502a481","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"abd013937db3d7629eb64c371502a481"} gateway-1 | {"time_local":"21/Sep/2024:15:06:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.044","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"abd013937db3d7629eb64c371502a481"} device-1 | {"level":"info","message":"PATCH /devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988? 200 40ms","method":"PATCH","requestID":"abd013937db3d7629eb64c371502a481","responseTime":40,"status":200,"url":"/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4OX0.gS8pxdyMkf4CRuHVoPjAX_fNiE4l82yPpYdL6NoIHRA","level":"info","message":"auth send jwt","requestID":"493a09af7aa15b42234db0bd5f53c4f7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"493a09af7aa15b42234db0bd5f53c4f7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"493a09af7aa15b42234db0bd5f53c4f7"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1387,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1387,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.716903,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"493a09af7aa15b42234db0bd5f53c4f7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931189,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4OX0.gS8pxdyMkf4CRuHVoPjAX_fNiE4l82yPpYdL6NoIHRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"493a09af7aa15b42234db0bd5f53c4f7","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d193c4c-c13f-4a6f-9200-786dc6eed7e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d193c4c-c13f-4a6f-9200-786dc6eed7e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:27.528444133Z"}]},"request_id":"8e9f2a5c-3614-4878-bb09-b27bb57482be","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931189.72392} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"493a09af7aa15b42234db0bd5f53c4f7","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"493a09af7aa15b42234db0bd5f53c4f7"} gateway-1 | {"time_local":"21/Sep/2024:15:06:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"493a09af7aa15b42234db0bd5f53c4f7"} device-1 | {"level":"info","message":"GET /devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8? 200 11ms","method":"GET","requestID":"493a09af7aa15b42234db0bd5f53c4f7","responseTime":11,"status":200,"url":"/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4OX0.gS8pxdyMkf4CRuHVoPjAX_fNiE4l82yPpYdL6NoIHRA","level":"info","message":"auth send jwt","requestID":"b2d8fa11a651793afac5dcf22f487e0f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b2d8fa11a651793afac5dcf22f487e0f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b2d8fa11a651793afac5dcf22f487e0f"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1388,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1388,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.705722,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b2d8fa11a651793afac5dcf22f487e0f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931189,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4OX0.gS8pxdyMkf4CRuHVoPjAX_fNiE4l82yPpYdL6NoIHRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b2d8fa11a651793afac5dcf22f487e0f","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d00f8d5-ac30-409f-a849-1cbd8f13e988","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d00f8d5-ac30-409f-a849-1cbd8f13e988","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:27.580373429Z"}]},"request_id":"ae260f6b-da4e-43fe-8429-3113351bc6b1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931189.7389216} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b2d8fa11a651793afac5dcf22f487e0f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b2d8fa11a651793afac5dcf22f487e0f"} device-1 | {"level":"info","message":"GET /devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988? 200 10ms","method":"GET","requestID":"b2d8fa11a651793afac5dcf22f487e0f","responseTime":10,"status":200,"url":"/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b2d8fa11a651793afac5dcf22f487e0f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4OX0.gS8pxdyMkf4CRuHVoPjAX_fNiE4l82yPpYdL6NoIHRA","level":"info","message":"auth send jwt","requestID":"404104473e58f7f3d674a62bd1512f17"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"404104473e58f7f3d674a62bd1512f17","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"404104473e58f7f3d674a62bd1512f17"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1389,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1389,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.825222,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"404104473e58f7f3d674a62bd1512f17","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931189,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4OX0.gS8pxdyMkf4CRuHVoPjAX_fNiE4l82yPpYdL6NoIHRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"404104473e58f7f3d674a62bd1512f17","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba"},"level":"info","message":"Attempting to run experiment","requestID":"404104473e58f7f3d674a62bd1512f17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba"},"level":"info","message":"Attempting to book experiment","requestID":"404104473e58f7f3d674a62bd1512f17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba"},"level":"info","message":"Successfully booked experiment","requestID":"404104473e58f7f3d674a62bd1512f17"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14b137a0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14b1acd0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1390,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1390,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.772271,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"14b137a0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931189,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4OX0.gS8pxdyMkf4CRuHVoPjAX_fNiE4l82yPpYdL6NoIHRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"14b137a0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1391,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1391,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.296584,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"14b1acd0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931189,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4OX0.gS8pxdyMkf4CRuHVoPjAX_fNiE4l82yPpYdL6NoIHRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"14b1acd0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d193c4c-c13f-4a6f-9200-786dc6eed7e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d193c4c-c13f-4a6f-9200-786dc6eed7e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:27.528444133Z"}]},"request_id":"5e9d626d-580a-47d4-b0d0-3311934ae85d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931189.797568} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"14b137a0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d00f8d5-ac30-409f-a849-1cbd8f13e988","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d00f8d5-ac30-409f-a849-1cbd8f13e988","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:27.580373429Z"}]},"request_id":"b966b701-1576-48e4-acaf-d0e81c48138d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931189.8020372} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14b137a0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"14b1acd0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8? 200 17ms","method":"GET","requestID":"14b137a0-782b-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14b1acd0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988? 200 18ms","method":"GET","requestID":"14b1acd0-782b-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba"},"level":"info","message":"Setting up experiment","requestID":"404104473e58f7f3d674a62bd1512f17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"404104473e58f7f3d674a62bd1512f17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba"},"level":"info","message":"Successfully locked booking for experiment","requestID":"404104473e58f7f3d674a62bd1512f17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"404104473e58f7f3d674a62bd1512f17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"404104473e58f7f3d674a62bd1512f17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba"},"level":"info","message":"Attempting to update booking for experiment","requestID":"404104473e58f7f3d674a62bd1512f17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba"},"level":"info","message":"Successfully updated booking for experiment","requestID":"404104473e58f7f3d674a62bd1512f17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba"},"level":"info","message":"Successfully set up experiment","requestID":"404104473e58f7f3d674a62bd1512f17"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14bc5b30-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14bca950-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14bcf770-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba"},"level":"info","message":"Successfully running experiment","requestID":"404104473e58f7f3d674a62bd1512f17"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1392,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1392,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.958143,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"14bc5b30-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931189,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4OX0.gS8pxdyMkf4CRuHVoPjAX_fNiE4l82yPpYdL6NoIHRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"14bc5b30-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1393,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1393,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.980169,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"14bca950-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931189,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4OX0.gS8pxdyMkf4CRuHVoPjAX_fNiE4l82yPpYdL6NoIHRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"14bca950-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1394,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d193c4c-c13f-4a6f-9200-786dc6eed7e8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2c99dd33-ffeb-44e3-b738-472c170d4c7c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931189.8716447} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1394,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.320766,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"14bcf770-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"14bcf770-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d193c4c-c13f-4a6f-9200-786dc6eed7e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d193c4c-c13f-4a6f-9200-786dc6eed7e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:27.528444133Z"}]},"request_id":"d2ab2c92-52d7-4721-b157-38966af0ea10","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931189.8747282} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"14bc5b30-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d00f8d5-ac30-409f-a849-1cbd8f13e988","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d00f8d5-ac30-409f-a849-1cbd8f13e988","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:27.580373429Z"}]},"request_id":"f96280fe-b438-4272-85d0-1614ee6d0cc1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931189.8775337} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"14bca950-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14bcf770-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8/signaling 200 17ms","method":"POST","requestID":"14bcf770-782b-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14bfdda0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14bc5b30-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8? 200 26ms","method":"GET","requestID":"14bc5b30-782b-11ef-88d4-5fea3f61bb98","responseTime":26,"status":200,"url":"/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1395,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:29Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14bca950-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988? 200 27ms","method":"GET","requestID":"14bca950-782b-11ef-88d4-5fea3f61bb98","responseTime":27,"status":200,"url":"/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0b4101d3-0133-476e-8c7d-54f5bfc80bba#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0b4101d3-0133-476e-8c7d-54f5bfc80bba","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"9e6e7364-f1e9-4d40-9017-0e06759866f4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931189.889372} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a01d40e1-87d3-4226-896c-dc7ad56c0fdc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931189.8895922} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d00f8d5-ac30-409f-a849-1cbd8f13e988","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8f1840b0-8bc7-4bb9-8855-1595c952f2b4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931189.8897054} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14c13d30-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"404104473e58f7f3d674a62bd1512f17","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1395,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.19586,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"14bfdda0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"14bfdda0-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1396,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:29Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14bfdda0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988/signaling 200 15ms","method":"POST","requestID":"14bfdda0-782b-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d193c4c-c13f-4a6f-9200-786dc6eed7e8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f134159c-13c7-472c-8c4d-3ea92422de86","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931189.897636} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1396,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.448507,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"14c13d30-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"404104473e58f7f3d674a62bd1512f17"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"14c13d30-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:06:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1212","request_time":"0.158","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"404104473e58f7f3d674a62bd1512f17"} experiment-1 | {"level":"info","message":"POST /experiments? 201 152ms","method":"POST","requestID":"404104473e58f7f3d674a62bd1512f17","responseTime":152,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14c13d30-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8/signaling 200 11ms","method":"POST","requestID":"14c13d30-782b-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4OX0.gS8pxdyMkf4CRuHVoPjAX_fNiE4l82yPpYdL6NoIHRA","level":"info","message":"auth send jwt","requestID":"3cead32687a7d27c2c104ef4460c5ae8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14c36010-782b-11ef-88d4-5fea3f61bb98"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3cead32687a7d27c2c104ef4460c5ae8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3cead32687a7d27c2c104ef4460c5ae8"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1397,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1398,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d00f8d5-ac30-409f-a849-1cbd8f13e988","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8e6d205b-9794-4ce6-a58d-49447655dd5f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931189.9099958} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1398,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.074716,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"3cead32687a7d27c2c104ef4460c5ae8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931189,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4OX0.gS8pxdyMkf4CRuHVoPjAX_fNiE4l82yPpYdL6NoIHRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3cead32687a7d27c2c104ef4460c5ae8","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1397,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.604833,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"14c36010-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"14c36010-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d193c4c-c13f-4a6f-9200-786dc6eed7e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d193c4c-c13f-4a6f-9200-786dc6eed7e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:27.528444133Z"}]},"request_id":"089bbbff-bb19-4aec-a223-24706b214c36","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931189.914785} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14c36010-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988/signaling 200 11ms","method":"POST","requestID":"14c36010-782b-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3cead32687a7d27c2c104ef4460c5ae8","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"404104473e58f7f3d674a62bd1512f17"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14c55be0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14c582f0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3cead32687a7d27c2c104ef4460c5ae8"} gateway-1 | {"time_local":"21/Sep/2024:15:06:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3cead32687a7d27c2c104ef4460c5ae8"} device-1 | {"level":"info","message":"GET /devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8? 200 14ms","method":"GET","requestID":"3cead32687a7d27c2c104ef4460c5ae8","responseTime":14,"status":200,"url":"/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1399,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1399,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.163811,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"14c55be0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931189,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4OX0.gS8pxdyMkf4CRuHVoPjAX_fNiE4l82yPpYdL6NoIHRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"14c55be0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1400,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1400,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.242388,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"14c582f0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931189,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4OX0.gS8pxdyMkf4CRuHVoPjAX_fNiE4l82yPpYdL6NoIHRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"14c582f0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4OX0.gS8pxdyMkf4CRuHVoPjAX_fNiE4l82yPpYdL6NoIHRA","level":"info","message":"auth send jwt","requestID":"2539304fd2d02fcdb590aa3871e1482a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2539304fd2d02fcdb590aa3871e1482a","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d193c4c-c13f-4a6f-9200-786dc6eed7e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d193c4c-c13f-4a6f-9200-786dc6eed7e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:27.528444133Z"}]},"request_id":"cea75da2-f5ec-49f5-8c12-23e18977d6fb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931189.9277186} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"14c55be0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2539304fd2d02fcdb590aa3871e1482a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d00f8d5-ac30-409f-a849-1cbd8f13e988","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d00f8d5-ac30-409f-a849-1cbd8f13e988","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:27.580373429Z"}]},"request_id":"e55e79d5-189e-4d61-b94f-23390501697f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931189.9303908} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14c55be0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"14c582f0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8? 200 14ms","method":"GET","requestID":"14c55be0-782b-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1401,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1401,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.919113,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"2539304fd2d02fcdb590aa3871e1482a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931189,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4OX0.gS8pxdyMkf4CRuHVoPjAX_fNiE4l82yPpYdL6NoIHRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2539304fd2d02fcdb590aa3871e1482a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14c582f0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988? 200 16ms","method":"GET","requestID":"14c582f0-782b-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d00f8d5-ac30-409f-a849-1cbd8f13e988","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d00f8d5-ac30-409f-a849-1cbd8f13e988","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:27.580373429Z"}]},"request_id":"7cc56530-2ff6-479e-a9b8-3056256a67b8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931189.936307} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba"},"level":"info","message":"Building connection plan","requestID":"404104473e58f7f3d674a62bd1512f17"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"58816464-36d6-4a1e-b5f7-07b2e6d175d9"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"23290558-b4f9-4165-8bfa-15672caebbda"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"6719f957-799c-4840-bf6e-076a36d27f16"}]},"level":"info","message":"Built pairwise service configurations","requestID":"404104473e58f7f3d674a62bd1512f17"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2539304fd2d02fcdb590aa3871e1482a","responseTime":3,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"14c89030-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"14c89030-782b-11ef-938d-0b888d58857d"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2539304fd2d02fcdb590aa3871e1482a"} gateway-1 | {"time_local":"21/Sep/2024:15:06:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2539304fd2d02fcdb590aa3871e1482a"} device-1 | {"level":"info","message":"GET /devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988? 200 12ms","method":"GET","requestID":"2539304fd2d02fcdb590aa3871e1482a","responseTime":12,"status":200,"url":"/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988?"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"14c89030-782b-11ef-938d-0b888d58857d","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/dfb6405e-a848-4759-a927-8b3a7e8ed089?id=2f17f59e-b656-4195-8726-a91f662f69f8","ws://localhost/rooms/dfb6405e-a848-4759-a927-8b3a7e8ed089?id=40464e0c-dd39-4855-9c51-ef3f188594fd"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"404104473e58f7f3d674a62bd1512f17"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"14c90560-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1402,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1402,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.820149,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"14c90560-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931189,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE4OX0.gS8pxdyMkf4CRuHVoPjAX_fNiE4l82yPpYdL6NoIHRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"14c90560-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"8872b4f3-dbb4-45b0-ba99-d8ba371b12d8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931189.9533348} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b1f7f06c-e8d9-4bf7-8004-0692e0dc7886","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931189.953637} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"14c90560-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"14c90560-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"14c90560-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/404cf22e-91c0-4be6-ad22-b4827769ca5c'","requestID":"14c90560-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/404cf22e-91c0-4be6-ad22-b4827769ca5c'","requestID":"14c90560-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"14c90560-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 26ms","method":"POST","requestID":"14c90560-782b-11ef-88d4-5fea3f61bb98","responseTime":26,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"14c90560-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/404cf22e-91c0-4be6-ad22-b4827769ca5c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"404cf22e-91c0-4be6-ad22-b4827769ca5c","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"14ced1c0-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2f17f59e-b656-4195-8726-a91f662f69f8\" in room \"http://localhost/rooms/dfb6405e-a848-4759-a927-8b3a7e8ed089\"","requestID":"14ced1c0-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"14ced1c0-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"14cf1fe0-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"40464e0c-dd39-4855-9c51-ef3f188594fd\" in room \"http://localhost/rooms/dfb6405e-a848-4759-a927-8b3a7e8ed089\"","requestID":"14cf1fe0-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"14cf1fe0-782b-11ef-938d-0b888d58857d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6fe37b3f37b9d7f97bb2d1632d25c522","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6fe37b3f37b9d7f97bb2d1632d25c522","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2f17f59e-b656-4195-8726-a91f662f69f8\" in room \"http://localhost/rooms/dfb6405e-a848-4759-a927-8b3a7e8ed089\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2f17f59e-b656-4195-8726-a91f662f69f8\" in room \"http://localhost/rooms/dfb6405e-a848-4759-a927-8b3a7e8ed089\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2f17f59e-b656-4195-8726-a91f662f69f8\" in room \"http://localhost/rooms/dfb6405e-a848-4759-a927-8b3a7e8ed089\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2f17f59e-b656-4195-8726-a91f662f69f8\" in room \"http://localhost/rooms/dfb6405e-a848-4759-a927-8b3a7e8ed089\""} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/404cf22e-91c0-4be6-ad22-b4827769ca5c"}}},"level":"info","message":"received a callback","requestID":"6fe37b3f37b9d7f97bb2d1632d25c522"} device-1 | {"data":{"peerconnection":"404cf22e-91c0-4be6-ad22-b4827769ca5c","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"6fe37b3f37b9d7f97bb2d1632d25c522","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"6fe37b3f37b9d7f97bb2d1632d25c522"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"404104473e58f7f3d674a62bd1512f17"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14d2f070-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"data":{"peerconnection":"404cf22e-91c0-4be6-ad22-b4827769ca5c","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1403,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:30Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d193c4c-c13f-4a6f-9200-786dc6eed7e8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"18aaad52-3758-4e3a-9c66-0e9b1a31b3d4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931190.011078} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1403,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.573062,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"14d2f070-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"14d2f070-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/404cf22e-91c0-4be6-ad22-b4827769ca5c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"404cf22e-91c0-4be6-ad22-b4827769ca5c","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14d2f070-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8/signaling 200 15ms","method":"POST","requestID":"14d2f070-782b-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4c24abf28f004b4cb2a2f3f2fb6a26ec","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4c24abf28f004b4cb2a2f3f2fb6a26ec","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14d58880-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/404cf22e-91c0-4be6-ad22-b4827769ca5c"}}},"level":"info","message":"received a callback","requestID":"4c24abf28f004b4cb2a2f3f2fb6a26ec"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1404,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:30Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d00f8d5-ac30-409f-a849-1cbd8f13e988","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7ba7d1db-fd18-46f5-9d6e-c8aac2b2403a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931190.0285523} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1404,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.557735,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:30Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"14d64bd0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"14d58880-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"14d58880-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1405,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:30Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F404cf22e-91c0-4be6-ad22-b4827769ca5c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ea3be38b-aea7-49b5-8a11-baf3a3e20d22","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931190.0331175} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1405,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.237263,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:30Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14d58880-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/404cf22e-91c0-4be6-ad22-b4827769ca5c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"14d64bd0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/404cf22e-91c0-4be6-ad22-b4827769ca5c","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"POST /devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988/signaling 200 10ms","method":"POST","requestID":"14d58880-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"14d64bd0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"14d64bd0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/404cf22e-91c0-4be6-ad22-b4827769ca5c 200 7ms","method":"GET","requestID":"14d64bd0-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/peerconnections/404cf22e-91c0-4be6-ad22-b4827769ca5c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 26ms","method":"POST","requestID":"4c24abf28f004b4cb2a2f3f2fb6a26ec","responseTime":26,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.030","http_referrer":"","http_user_agent":"node-fetch","requestID":"4c24abf28f004b4cb2a2f3f2fb6a26ec"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14d9a730-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1406,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:30Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d00f8d5-ac30-409f-a849-1cbd8f13e988","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"147c95a1-9207-47e2-8b9c-9b83dfc0d3cf","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931190.055552} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1406,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.353084,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"14d9a730-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"14d9a730-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14d9a730-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988/signaling 200 8ms","method":"POST","requestID":"14d9a730-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14db2dd0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1407,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:30Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d193c4c-c13f-4a6f-9200-786dc6eed7e8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3eeacadb-e2b5-472d-a632-26721d716829","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931190.0660703} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1407,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.63909,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"14db2dd0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"14db2dd0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14db2dd0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8/signaling 200 10ms","method":"POST","requestID":"14db2dd0-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5MH0.Dt2fovqUSKk0V5ahQ1J6ajwJL-2ajge6kfRdSLGQDDo","level":"info","message":"auth send jwt","requestID":"bfc53448ef849720fdb344ca11c05c50"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bfc53448ef849720fdb344ca11c05c50","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba","requestID":"bfc53448ef849720fdb344ca11c05c50"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1408,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:30Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1408,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.673071,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bfc53448ef849720fdb344ca11c05c50","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931190,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5MH0.Dt2fovqUSKk0V5ahQ1J6ajwJL-2ajge6kfRdSLGQDDo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bfc53448ef849720fdb344ca11c05c50","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba","requestID":"bfc53448ef849720fdb344ca11c05c50"} gateway-1 | {"time_local":"21/Sep/2024:15:06:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba HTTP/1.1","status": "200","body_bytes_sent":"1285","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bfc53448ef849720fdb344ca11c05c50"} experiment-1 | {"level":"info","message":"GET /experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba 200 11ms","method":"GET","requestID":"bfc53448ef849720fdb344ca11c05c50","responseTime":11,"status":200,"url":"/experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5MH0.Dt2fovqUSKk0V5ahQ1J6ajwJL-2ajge6kfRdSLGQDDo","level":"info","message":"auth send jwt","requestID":"e17e302fb39bd426e23dab84aa314251"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e17e302fb39bd426e23dab84aa314251","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba","requestID":"e17e302fb39bd426e23dab84aa314251"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1409,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:30Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1409,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.137999,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:30Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e17e302fb39bd426e23dab84aa314251","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931190,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5MH0.Dt2fovqUSKk0V5ahQ1J6ajwJL-2ajge6kfRdSLGQDDo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e17e302fb39bd426e23dab84aa314251","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba"},"level":"info","message":"Attempting to finish experiment","requestID":"e17e302fb39bd426e23dab84aa314251"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"14e4cac0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1410,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:30Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1410,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.294,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:30Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/404cf22e-91c0-4be6-ad22-b4827769ca5c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"14e4cac0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/404cf22e-91c0-4be6-ad22-b4827769ca5c","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931190,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5MH0.Dt2fovqUSKk0V5ahQ1J6ajwJL-2ajge6kfRdSLGQDDo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"14e4cac0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/404cf22e-91c0-4be6-ad22-b4827769ca5c","device":"7d00f8d5-ac30-409f-a849-1cbd8f13e988","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/404cf22e-91c0-4be6-ad22-b4827769ca5c","device":"7d193c4c-c13f-4a6f-9200-786dc6eed7e8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"21/Sep/2024:15:06:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/dfb6405e-a848-4759-a927-8b3a7e8ed089?id=2f17f59e-b656-4195-8726-a91f662f69f8 HTTP/1.1","status": "101","body_bytes_sent":"438","request_time":"0.163","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"93045ed8d3b8b6c4dd828454276498f1"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"2f17f59e-b656-4195-8726-a91f662f69f8\" in room \"http://localhost/rooms/dfb6405e-a848-4759-a927-8b3a7e8ed089\""} gateway-1 | {"time_local":"21/Sep/2024:15:06:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/dfb6405e-a848-4759-a927-8b3a7e8ed089?id=40464e0c-dd39-4855-9c51-ef3f188594fd HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.162","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0a0eddda36d747ae4e51df9b69200ddb"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"2f17f59e-b656-4195-8726-a91f662f69f8\" from room \"http://localhost/rooms/dfb6405e-a848-4759-a927-8b3a7e8ed089\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/404cf22e-91c0-4be6-ad22-b4827769ca5c' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/404cf22e-91c0-4be6-ad22-b4827769ca5c' to 'http://localhost/callbacks/experiment'"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"40464e0c-dd39-4855-9c51-ef3f188594fd\" in room \"http://localhost/rooms/dfb6405e-a848-4759-a927-8b3a7e8ed089\""} device-1 | {"data":{"peerconnection":"404cf22e-91c0-4be6-ad22-b4827769ca5c","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"40464e0c-dd39-4855-9c51-ef3f188594fd\" from room \"http://localhost/rooms/dfb6405e-a848-4759-a927-8b3a7e8ed089\""} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F404cf22e-91c0-4be6-ad22-b4827769ca5c': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F404cf22e-91c0-4be6-ad22-b4827769ca5c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"40924327-4bf5-402f-a14e-90b1b56f3d53","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931190.1461475} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"250a2faa965cc925640af6a5927790f3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b6327898-fc54-477e-b6c1-d8c16d2d91a7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931190.1464686} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"250a2faa965cc925640af6a5927790f3","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b5634c36972e80c972eb1ecc6560e83b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b5634c36972e80c972eb1ecc6560e83b","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/404cf22e-91c0-4be6-ad22-b4827769ca5c"}}},"level":"info","message":"received a callback","requestID":"250a2faa965cc925640af6a5927790f3"} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"14e4cac0-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/404cf22e-91c0-4be6-ad22-b4827769ca5c"}}},"level":"info","message":"received a callback","requestID":"b5634c36972e80c972eb1ecc6560e83b"} device-1 | {"data":{"peerconnection":"404cf22e-91c0-4be6-ad22-b4827769ca5c","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"14e4cac0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/404cf22e-91c0-4be6-ad22-b4827769ca5c 204 42ms","method":"DELETE","requestID":"14e4cac0-782b-11ef-88d4-5fea3f61bb98","responseTime":42,"status":204,"url":"/peerconnections/404cf22e-91c0-4be6-ad22-b4827769ca5c"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba"},"level":"info","message":"Successfully finished experiment","requestID":"e17e302fb39bd426e23dab84aa314251"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14ee67b0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1411,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:30Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d00f8d5-ac30-409f-a849-1cbd8f13e988","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"07340bb4-2ab2-448b-80a2-a4a06d276c08","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931190.1961918} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1411,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.900168,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"14ee67b0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"14ee67b0-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14ee67b0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988/signaling 200 16ms","method":"POST","requestID":"14ee67b0-782b-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0b4101d3-0133-476e-8c7d-54f5bfc80bba': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0b4101d3-0133-476e-8c7d-54f5bfc80bba","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"4196124d-c533-490d-9098-6f8275c60676","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931190.2033012} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5e84625c-d9c6-48db-a00b-dbd56d79614b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931190.2035055} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"e17e302fb39bd426e23dab84aa314251","responseTime":22,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14f14de0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1412,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:30Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d193c4c-c13f-4a6f-9200-786dc6eed7e8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e98cfe2d-acd9-48d8-9fdf-a9831b972e6f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931190.2134464} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1412,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.611443,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"14f14de0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"14f14de0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14f14de0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8/signaling 200 13ms","method":"POST","requestID":"14f14de0-782b-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba","requestID":"e17e302fb39bd426e23dab84aa314251"} gateway-1 | {"time_local":"21/Sep/2024:15:06:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.169","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e17e302fb39bd426e23dab84aa314251"} experiment-1 | {"level":"info","message":"DELETE /experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba 204 165ms","method":"DELETE","requestID":"e17e302fb39bd426e23dab84aa314251","responseTime":165,"status":204,"url":"/experiments/0b4101d3-0133-476e-8c7d-54f5bfc80bba"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 134ms","method":"POST","requestID":"250a2faa965cc925640af6a5927790f3","responseTime":134,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.137","http_referrer":"","http_user_agent":"node-fetch","requestID":"250a2faa965cc925640af6a5927790f3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 133ms","method":"POST","requestID":"b5634c36972e80c972eb1ecc6560e83b","responseTime":133,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5MH0.Dt2fovqUSKk0V5ahQ1J6ajwJL-2ajge6kfRdSLGQDDo","level":"info","message":"auth send jwt","requestID":"0d7a5719d08cd7a6d5ced55cb793b532"} gateway-1 | {"time_local":"21/Sep/2024:15:06:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.139","http_referrer":"","http_user_agent":"node-fetch","requestID":"b5634c36972e80c972eb1ecc6560e83b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0d7a5719d08cd7a6d5ced55cb793b532","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0d7a5719d08cd7a6d5ced55cb793b532"} gateway-1 | {"time_local":"21/Sep/2024:15:06:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1744","request_time":"0.660","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0c5831bd4a5d255c558da52aca88939b"} gateway-1 | {"time_local":"21/Sep/2024:15:06:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1745","request_time":"0.696","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"80c43e127d92bfbed379bc07e8d5f74e"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1413,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:30Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1413,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.081069,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0d7a5719d08cd7a6d5ced55cb793b532","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931190,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5MH0.Dt2fovqUSKk0V5ahQ1J6ajwJL-2ajge6kfRdSLGQDDo"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"0d7a5719d08cd7a6d5ced55cb793b532","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/7d00f8d5-ac30-409f-a849-1cbd8f13e988' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/7d193c4c-c13f-4a6f-9200-786dc6eed7e8' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3d71622-8d75-4304-af32-938e9df7d40d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7d0d86d2-e12b-4cf4-a53e-3148718d747e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931190.3183236} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0d7a5719d08cd7a6d5ced55cb793b532","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9034ca74-5e21-4c0d-89fc-a06208f70fcf","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931190.3232543} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"0d7a5719d08cd7a6d5ced55cb793b532","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3d71622-8d75-4304-af32-938e9df7d40d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"93681c28-e7b9-458d-ace3-3564f9e26daa","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931190.3320878} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b3c51f93-77a9-423b-99e1-5a157bd22ce4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931190.332376} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"0d7a5719d08cd7a6d5ced55cb793b532","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3d71622-8d75-4304-af32-938e9df7d40d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3d71622-8d75-4304-af32-938e9df7d40d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:30.332033770Z"}]},"request_id":"ca8d093b-c722-4057-aab7-29435ae5cc73","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931190.336086} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0d7a5719d08cd7a6d5ced55cb793b532","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0d7a5719d08cd7a6d5ced55cb793b532"} gateway-1 | {"time_local":"21/Sep/2024:15:06:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.060","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0d7a5719d08cd7a6d5ced55cb793b532"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"0d7a5719d08cd7a6d5ced55cb793b532","responseTime":52,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5MH0.Dt2fovqUSKk0V5ahQ1J6ajwJL-2ajge6kfRdSLGQDDo","level":"info","message":"auth send jwt","requestID":"b282de6d551ed533fa9e507e661a0905"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b282de6d551ed533fa9e507e661a0905","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b282de6d551ed533fa9e507e661a0905"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1414,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:30Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1414,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.71627,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b282de6d551ed533fa9e507e661a0905","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931190,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5MH0.Dt2fovqUSKk0V5ahQ1J6ajwJL-2ajge6kfRdSLGQDDo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b282de6d551ed533fa9e507e661a0905","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd673b52d-d2b9-4230-ab62-efc46cc73ece","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"649c1700-f3ce-4f25-8161-cc8dd3e38f5d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931190.3663256} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b282de6d551ed533fa9e507e661a0905","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b5dd78c0-dee8-4ccc-8b7b-47b6986bda6f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931190.3709383} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"b282de6d551ed533fa9e507e661a0905","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd673b52d-d2b9-4230-ab62-efc46cc73ece","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"80209664-4236-492c-8faa-f42d114d5500","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931190.3818777} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"937d4447-9522-49ae-9709-8127993c8031","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931190.3820727} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"b282de6d551ed533fa9e507e661a0905","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd673b52d-d2b9-4230-ab62-efc46cc73ece","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd673b52d-d2b9-4230-ab62-efc46cc73ece","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:30.381843108Z"}]},"request_id":"054df584-6d42-4a27-acff-6d5bb1040487","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931190.3859127} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b282de6d551ed533fa9e507e661a0905","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b282de6d551ed533fa9e507e661a0905"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"b282de6d551ed533fa9e507e661a0905","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b282de6d551ed533fa9e507e661a0905"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"41c2a3d4c9c5600787342c4e825cb33c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"41c2a3d4c9c5600787342c4e825cb33c","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a3d71622-8d75-4304-af32-938e9df7d40d/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"41c2a3d4c9c5600787342c4e825cb33c"} device-1 | {"level":"info","message":"OPTIONS /devices/a3d71622-8d75-4304-af32-938e9df7d40d/websocket 200 1ms","method":"OPTIONS","requestID":"41c2a3d4c9c5600787342c4e825cb33c","responseTime":1,"status":200,"url":"/devices/a3d71622-8d75-4304-af32-938e9df7d40d/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Mn0.Ly1vYlWJBp1Q_Z8LlmKOrN-nIekiAGV6GZmmaErMjWI","level":"info","message":"auth send jwt","requestID":"6af17538a41708726f360a89579b2e53"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6af17538a41708726f360a89579b2e53","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"642e56dabd5a6d08cf157b8bb8306507","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6af17538a41708726f360a89579b2e53"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"642e56dabd5a6d08cf157b8bb8306507","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/d673b52d-d2b9-4230-ab62-efc46cc73ece/websocket 200 1ms","method":"OPTIONS","requestID":"642e56dabd5a6d08cf157b8bb8306507","responseTime":1,"status":200,"url":"/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/d673b52d-d2b9-4230-ab62-efc46cc73ece/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.006","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"642e56dabd5a6d08cf157b8bb8306507"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1415,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1415,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.881161,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"6af17538a41708726f360a89579b2e53","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931192,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Mn0.Ly1vYlWJBp1Q_Z8LlmKOrN-nIekiAGV6GZmmaErMjWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6af17538a41708726f360a89579b2e53","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Mn0.Ly1vYlWJBp1Q_Z8LlmKOrN-nIekiAGV6GZmmaErMjWI","level":"info","message":"auth send jwt","requestID":"5dace275e1cbfda18fd2bb3bdaaf804b"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"5dace275e1cbfda18fd2bb3bdaaf804b","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5dace275e1cbfda18fd2bb3bdaaf804b"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1416,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1416,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.219253,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"5dace275e1cbfda18fd2bb3bdaaf804b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931192,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Mn0.Ly1vYlWJBp1Q_Z8LlmKOrN-nIekiAGV6GZmmaErMjWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5dace275e1cbfda18fd2bb3bdaaf804b","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6af17538a41708726f360a89579b2e53"} gateway-1 | {"time_local":"21/Sep/2024:15:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a3d71622-8d75-4304-af32-938e9df7d40d/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.031","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6af17538a41708726f360a89579b2e53"} device-1 | {"level":"info","message":"POST /devices/a3d71622-8d75-4304-af32-938e9df7d40d/websocket 200 26ms","method":"POST","requestID":"6af17538a41708726f360a89579b2e53","responseTime":26,"status":200,"url":"/devices/a3d71622-8d75-4304-af32-938e9df7d40d/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5dace275e1cbfda18fd2bb3bdaaf804b"} device-1 | {"level":"info","message":"POST /devices/d673b52d-d2b9-4230-ab62-efc46cc73ece/websocket 200 23ms","method":"POST","requestID":"5dace275e1cbfda18fd2bb3bdaaf804b","responseTime":23,"status":200,"url":"/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d673b52d-d2b9-4230-ab62-efc46cc73ece/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.032","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5dace275e1cbfda18fd2bb3bdaaf804b"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"02a1d6e3fb10cf45bbcf2e4ebfbd038b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"02a1d6e3fb10cf45bbcf2e4ebfbd038b","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a3d71622-8d75-4304-af32-938e9df7d40d? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"02a1d6e3fb10cf45bbcf2e4ebfbd038b"} device-1 | {"level":"info","message":"OPTIONS /devices/a3d71622-8d75-4304-af32-938e9df7d40d? 200 1ms","method":"OPTIONS","requestID":"02a1d6e3fb10cf45bbcf2e4ebfbd038b","responseTime":1,"status":200,"url":"/devices/a3d71622-8d75-4304-af32-938e9df7d40d?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1f6e0684d89b08270ad1ea2472671a79","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1f6e0684d89b08270ad1ea2472671a79","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Mn0.Ly1vYlWJBp1Q_Z8LlmKOrN-nIekiAGV6GZmmaErMjWI","level":"info","message":"auth send jwt","requestID":"36f2ff873ca36f345ed04929088a54df"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"36f2ff873ca36f345ed04929088a54df","responseTime":7,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/d673b52d-d2b9-4230-ab62-efc46cc73ece? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.005","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1f6e0684d89b08270ad1ea2472671a79"} device-1 | {"level":"info","message":"OPTIONS /devices/d673b52d-d2b9-4230-ab62-efc46cc73ece? 200 1ms","method":"OPTIONS","requestID":"1f6e0684d89b08270ad1ea2472671a79","responseTime":1,"status":200,"url":"/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece?"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"36f2ff873ca36f345ed04929088a54df"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1417,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1417,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.744773,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:32Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Mn0.Ly1vYlWJBp1Q_Z8LlmKOrN-nIekiAGV6GZmmaErMjWI","level":"info","message":"auth send jwt","requestID":"19f7915070fc4ed48dea36f1263fa901"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"36f2ff873ca36f345ed04929088a54df","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931192,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Mn0.Ly1vYlWJBp1Q_Z8LlmKOrN-nIekiAGV6GZmmaErMjWI"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"19f7915070fc4ed48dea36f1263fa901","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"36f2ff873ca36f345ed04929088a54df","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"19f7915070fc4ed48dea36f1263fa901"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1418,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1418,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.856237,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"19f7915070fc4ed48dea36f1263fa901","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931192,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Mn0.Ly1vYlWJBp1Q_Z8LlmKOrN-nIekiAGV6GZmmaErMjWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"19f7915070fc4ed48dea36f1263fa901","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3d71622-8d75-4304-af32-938e9df7d40d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3d71622-8d75-4304-af32-938e9df7d40d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:30.332033770Z"}]},"request_id":"b2461494-51ef-40c9-88bb-ec97ced8fc28","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.498415} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"36f2ff873ca36f345ed04929088a54df","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9e918f33-693c-4882-bb54-0f6f136a3a25","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.5065613} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"36f2ff873ca36f345ed04929088a54df","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd673b52d-d2b9-4230-ab62-efc46cc73ece","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd673b52d-d2b9-4230-ab62-efc46cc73ece","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:30.381843108Z"}]},"request_id":"b7167978-e936-4b4e-8357-e72be5d240b1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.5103898} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"19f7915070fc4ed48dea36f1263fa901","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b53ff992-caba-4cad-b62b-2425f673de5c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.5171416} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"19f7915070fc4ed48dea36f1263fa901","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3d71622-8d75-4304-af32-938e9df7d40d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3d71622-8d75-4304-af32-938e9df7d40d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:30.332033770Z"}]},"request_id":"413d46ba-8146-4edf-a7c7-354d78e22530","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.5245655} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"36f2ff873ca36f345ed04929088a54df","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"36f2ff873ca36f345ed04929088a54df"} gateway-1 | {"time_local":"21/Sep/2024:15:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a3d71622-8d75-4304-af32-938e9df7d40d? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.053","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"36f2ff873ca36f345ed04929088a54df"} device-1 | {"level":"info","message":"PATCH /devices/a3d71622-8d75-4304-af32-938e9df7d40d? 200 43ms","method":"PATCH","requestID":"36f2ff873ca36f345ed04929088a54df","responseTime":43,"status":200,"url":"/devices/a3d71622-8d75-4304-af32-938e9df7d40d?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd673b52d-d2b9-4230-ab62-efc46cc73ece","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd673b52d-d2b9-4230-ab62-efc46cc73ece","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:30.381843108Z"}]},"request_id":"909627cd-2ccd-4168-b77f-665322173caf","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.5371528} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"19f7915070fc4ed48dea36f1263fa901","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"19f7915070fc4ed48dea36f1263fa901"} gateway-1 | {"time_local":"21/Sep/2024:15:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/d673b52d-d2b9-4230-ab62-efc46cc73ece? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.054","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"19f7915070fc4ed48dea36f1263fa901"} device-1 | {"level":"info","message":"PATCH /devices/d673b52d-d2b9-4230-ab62-efc46cc73ece? 200 49ms","method":"PATCH","requestID":"19f7915070fc4ed48dea36f1263fa901","responseTime":49,"status":200,"url":"/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Mn0.Ly1vYlWJBp1Q_Z8LlmKOrN-nIekiAGV6GZmmaErMjWI","level":"info","message":"auth send jwt","requestID":"f7c963a0a601dfc3962cdef2005140b7"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"f7c963a0a601dfc3962cdef2005140b7","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f7c963a0a601dfc3962cdef2005140b7"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1419,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1419,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.333588,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f7c963a0a601dfc3962cdef2005140b7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931192,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Mn0.Ly1vYlWJBp1Q_Z8LlmKOrN-nIekiAGV6GZmmaErMjWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f7c963a0a601dfc3962cdef2005140b7","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3d71622-8d75-4304-af32-938e9df7d40d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3d71622-8d75-4304-af32-938e9df7d40d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:30.332033770Z"}]},"request_id":"5ef6b6c0-5f33-4242-b160-aa9a99bf8baf","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.5665555} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f7c963a0a601dfc3962cdef2005140b7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f7c963a0a601dfc3962cdef2005140b7"} gateway-1 | {"time_local":"21/Sep/2024:15:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a3d71622-8d75-4304-af32-938e9df7d40d? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f7c963a0a601dfc3962cdef2005140b7"} device-1 | {"level":"info","message":"GET /devices/a3d71622-8d75-4304-af32-938e9df7d40d? 200 17ms","method":"GET","requestID":"f7c963a0a601dfc3962cdef2005140b7","responseTime":17,"status":200,"url":"/devices/a3d71622-8d75-4304-af32-938e9df7d40d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Mn0.Ly1vYlWJBp1Q_Z8LlmKOrN-nIekiAGV6GZmmaErMjWI","level":"info","message":"auth send jwt","requestID":"99ce18816e6e5a65a8cee9080780a7e7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"99ce18816e6e5a65a8cee9080780a7e7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"99ce18816e6e5a65a8cee9080780a7e7"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1420,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1420,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.148109,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"99ce18816e6e5a65a8cee9080780a7e7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931192,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Mn0.Ly1vYlWJBp1Q_Z8LlmKOrN-nIekiAGV6GZmmaErMjWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"99ce18816e6e5a65a8cee9080780a7e7","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd673b52d-d2b9-4230-ab62-efc46cc73ece","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd673b52d-d2b9-4230-ab62-efc46cc73ece","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:30.381843108Z"}]},"request_id":"5bde1249-e09d-4169-8178-78f756cff00b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.5901308} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"99ce18816e6e5a65a8cee9080780a7e7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"99ce18816e6e5a65a8cee9080780a7e7"} device-1 | {"level":"info","message":"GET /devices/d673b52d-d2b9-4230-ab62-efc46cc73ece? 200 16ms","method":"GET","requestID":"99ce18816e6e5a65a8cee9080780a7e7","responseTime":16,"status":200,"url":"/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d673b52d-d2b9-4230-ab62-efc46cc73ece? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"99ce18816e6e5a65a8cee9080780a7e7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Mn0.Ly1vYlWJBp1Q_Z8LlmKOrN-nIekiAGV6GZmmaErMjWI","level":"info","message":"auth send jwt","requestID":"e83b5699bbc492fc8d4e16d20aaae048"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e83b5699bbc492fc8d4e16d20aaae048","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"e83b5699bbc492fc8d4e16d20aaae048"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1421,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1421,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.152742,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e83b5699bbc492fc8d4e16d20aaae048","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931192,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Mn0.Ly1vYlWJBp1Q_Z8LlmKOrN-nIekiAGV6GZmmaErMjWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e83b5699bbc492fc8d4e16d20aaae048","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90c1f275-4b93-4939-8e05-44de31ac008c"},"level":"info","message":"Attempting to run experiment","requestID":"e83b5699bbc492fc8d4e16d20aaae048"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90c1f275-4b93-4939-8e05-44de31ac008c"},"level":"info","message":"Attempting to book experiment","requestID":"e83b5699bbc492fc8d4e16d20aaae048"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90c1f275-4b93-4939-8e05-44de31ac008c"},"level":"info","message":"Successfully booked experiment","requestID":"e83b5699bbc492fc8d4e16d20aaae048"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1668aba0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1668d2b0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1422,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1422,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.104259,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1668aba0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931192,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Mn0.Ly1vYlWJBp1Q_Z8LlmKOrN-nIekiAGV6GZmmaErMjWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1668aba0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1423,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1423,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.186944,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1668d2b0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931192,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Mn0.Ly1vYlWJBp1Q_Z8LlmKOrN-nIekiAGV6GZmmaErMjWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1668d2b0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3d71622-8d75-4304-af32-938e9df7d40d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3d71622-8d75-4304-af32-938e9df7d40d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:30.332033770Z"}]},"request_id":"cb1b591d-12c9-4ba0-b818-5a2cbd81df70","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.6767364} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1668aba0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd673b52d-d2b9-4230-ab62-efc46cc73ece","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd673b52d-d2b9-4230-ab62-efc46cc73ece","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:30.381843108Z"}]},"request_id":"cf79a218-d515-41c0-91ba-db8e61afd923","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.6779916} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1668d2b0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1668aba0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/a3d71622-8d75-4304-af32-938e9df7d40d? 200 19ms","method":"GET","requestID":"1668aba0-782b-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/a3d71622-8d75-4304-af32-938e9df7d40d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1668d2b0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/d673b52d-d2b9-4230-ab62-efc46cc73ece? 200 19ms","method":"GET","requestID":"1668d2b0-782b-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90c1f275-4b93-4939-8e05-44de31ac008c"},"level":"info","message":"Setting up experiment","requestID":"e83b5699bbc492fc8d4e16d20aaae048"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90c1f275-4b93-4939-8e05-44de31ac008c"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"e83b5699bbc492fc8d4e16d20aaae048"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90c1f275-4b93-4939-8e05-44de31ac008c"},"level":"info","message":"Successfully locked booking for experiment","requestID":"e83b5699bbc492fc8d4e16d20aaae048"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90c1f275-4b93-4939-8e05-44de31ac008c"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"e83b5699bbc492fc8d4e16d20aaae048"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90c1f275-4b93-4939-8e05-44de31ac008c"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"e83b5699bbc492fc8d4e16d20aaae048"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90c1f275-4b93-4939-8e05-44de31ac008c"},"level":"info","message":"Attempting to update booking for experiment","requestID":"e83b5699bbc492fc8d4e16d20aaae048"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90c1f275-4b93-4939-8e05-44de31ac008c"},"level":"info","message":"Successfully updated booking for experiment","requestID":"e83b5699bbc492fc8d4e16d20aaae048"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90c1f275-4b93-4939-8e05-44de31ac008c"},"level":"info","message":"Successfully set up experiment","requestID":"e83b5699bbc492fc8d4e16d20aaae048"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1673a820-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1673f640-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"16744460-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90c1f275-4b93-4939-8e05-44de31ac008c"},"level":"info","message":"Successfully running experiment","requestID":"e83b5699bbc492fc8d4e16d20aaae048"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1424,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1424,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.847351,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1425,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1673a820-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931192,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Mn0.Ly1vYlWJBp1Q_Z8LlmKOrN-nIekiAGV6GZmmaErMjWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1673a820-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1425,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.884763,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1673f640-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931192,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Mn0.Ly1vYlWJBp1Q_Z8LlmKOrN-nIekiAGV6GZmmaErMjWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"1673f640-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3d71622-8d75-4304-af32-938e9df7d40d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3d71622-8d75-4304-af32-938e9df7d40d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:30.332033770Z"}]},"request_id":"e348115a-2912-4354-91be-56d852f34741","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.7553596} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd673b52d-d2b9-4230-ab62-efc46cc73ece","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd673b52d-d2b9-4230-ab62-efc46cc73ece","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:30.381843108Z"}]},"request_id":"28a79cd1-4d3c-4be1-8848-d35069bb3909","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.7572725} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"1673a820-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3d71622-8d75-4304-af32-938e9df7d40d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"13cfef38-fd9e-4660-b27b-d7f819b4a9a5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.760176} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"1673f640-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:43866","level":"info","msg":"Received request.","req_id":1426,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:43866","level":"info","msg":"Sent response.","req_id":1426,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.616986,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F90c1f275-4b93-4939-8e05-44de31ac008c#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F90c1f275-4b93-4939-8e05-44de31ac008c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"a2de5f47-a7d6-4cb8-8b61-14c75137f751","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.7612832} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5e1c36bb-382d-4ee0-a2e7-9003e96dff44","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.7617319} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"16744460-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1673a820-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /authorize 200 18ms","method":"POST","requestID":"16744460-782b-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/a3d71622-8d75-4304-af32-938e9df7d40d? 200 26ms","method":"GET","requestID":"1673a820-782b-11ef-88d4-5fea3f61bb98","responseTime":26,"status":200,"url":"/devices/a3d71622-8d75-4304-af32-938e9df7d40d?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"e83b5699bbc492fc8d4e16d20aaae048","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1673f640-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/d673b52d-d2b9-4230-ab62-efc46cc73ece? 200 31ms","method":"GET","requestID":"1673f640-782b-11ef-88d4-5fea3f61bb98","responseTime":31,"status":200,"url":"/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"16744460-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a3d71622-8d75-4304-af32-938e9df7d40d/signaling 200 30ms","method":"POST","requestID":"16744460-782b-11ef-88d4-5fea3f61bb98","responseTime":30,"status":200,"url":"/devices/a3d71622-8d75-4304-af32-938e9df7d40d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1679c2a0-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/90c1f275-4b93-4939-8e05-44de31ac008c","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"e83b5699bbc492fc8d4e16d20aaae048"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"167a10c0-782b-11ef-88d4-5fea3f61bb98"} gateway-1 | {"time_local":"21/Sep/2024:15:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1212","request_time":"0.184","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e83b5699bbc492fc8d4e16d20aaae048"} experiment-1 | {"level":"info","message":"POST /experiments? 201 177ms","method":"POST","requestID":"e83b5699bbc492fc8d4e16d20aaae048","responseTime":177,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1427,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1428,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3d71622-8d75-4304-af32-938e9df7d40d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8bc57e89-aa46-473c-b1ff-8ed4bac04b84","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.7845929} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1427,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.4974,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1679c2a0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Mn0.Ly1vYlWJBp1Q_Z8LlmKOrN-nIekiAGV6GZmmaErMjWI","level":"info","message":"auth send jwt","requestID":"8a1f06d784df97795f56a686186fcbbf"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1679c2a0-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd673b52d-d2b9-4230-ab62-efc46cc73ece","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3b385276-b407-4c39-bf34-97f3d3e9b9a9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.7865956} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8a1f06d784df97795f56a686186fcbbf","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1428,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.54766,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"167a10c0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"167a10c0-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8a1f06d784df97795f56a686186fcbbf"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1429,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1429,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.05339,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:32Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1679c2a0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"8a1f06d784df97795f56a686186fcbbf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931192,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Mn0.Ly1vYlWJBp1Q_Z8LlmKOrN-nIekiAGV6GZmmaErMjWI"} device-1 | {"level":"info","message":"POST /devices/a3d71622-8d75-4304-af32-938e9df7d40d/signaling 200 15ms","method":"POST","requestID":"1679c2a0-782b-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/a3d71622-8d75-4304-af32-938e9df7d40d/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8a1f06d784df97795f56a686186fcbbf","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"167a10c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/d673b52d-d2b9-4230-ab62-efc46cc73ece/signaling 200 16ms","method":"POST","requestID":"167a10c0-782b-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"167ca8d0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3d71622-8d75-4304-af32-938e9df7d40d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3d71622-8d75-4304-af32-938e9df7d40d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:30.332033770Z"}]},"request_id":"b2683333-2574-4b6f-ad3a-e5a0c3356dae","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.7983015} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8a1f06d784df97795f56a686186fcbbf","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1430,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:32Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8a1f06d784df97795f56a686186fcbbf"} gateway-1 | {"time_local":"21/Sep/2024:15:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a3d71622-8d75-4304-af32-938e9df7d40d? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8a1f06d784df97795f56a686186fcbbf"} device-1 | {"level":"info","message":"GET /devices/a3d71622-8d75-4304-af32-938e9df7d40d? 200 14ms","method":"GET","requestID":"8a1f06d784df97795f56a686186fcbbf","responseTime":14,"status":200,"url":"/devices/a3d71622-8d75-4304-af32-938e9df7d40d?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd673b52d-d2b9-4230-ab62-efc46cc73ece","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8e376247-0218-4d99-9ab6-dbcf824637c2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.8038964} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1430,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.124135,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"167ca8d0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"167ca8d0-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Mn0.Ly1vYlWJBp1Q_Z8LlmKOrN-nIekiAGV6GZmmaErMjWI","level":"info","message":"auth send jwt","requestID":"49d9557f50345ef7c985034e67f4fd7d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"49d9557f50345ef7c985034e67f4fd7d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"49d9557f50345ef7c985034e67f4fd7d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"167ca8d0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/d673b52d-d2b9-4230-ab62-efc46cc73ece/signaling 200 14ms","method":"POST","requestID":"167ca8d0-782b-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90c1f275-4b93-4939-8e05-44de31ac008c"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"e83b5699bbc492fc8d4e16d20aaae048"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1431,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1431,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.011248,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:32Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"167f19d0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"49d9557f50345ef7c985034e67f4fd7d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931192,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Mn0.Ly1vYlWJBp1Q_Z8LlmKOrN-nIekiAGV6GZmmaErMjWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"49d9557f50345ef7c985034e67f4fd7d","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"167f40e0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1432,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1432,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.684465,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1433,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"167f19d0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931192,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Mn0.Ly1vYlWJBp1Q_Z8LlmKOrN-nIekiAGV6GZmmaErMjWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"167f19d0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1433,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.59572,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"167f40e0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931192,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Mn0.Ly1vYlWJBp1Q_Z8LlmKOrN-nIekiAGV6GZmmaErMjWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"167f40e0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd673b52d-d2b9-4230-ab62-efc46cc73ece","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd673b52d-d2b9-4230-ab62-efc46cc73ece","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:30.381843108Z"}]},"request_id":"74fd20a3-ffa5-4cc1-9368-0d98dec3f75b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.8182886} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"49d9557f50345ef7c985034e67f4fd7d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"49d9557f50345ef7c985034e67f4fd7d"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3d71622-8d75-4304-af32-938e9df7d40d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3d71622-8d75-4304-af32-938e9df7d40d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:30.332033770Z"}]},"request_id":"937d6d3e-009f-4c80-a517-64b720b2b6c0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.821967} gateway-1 | {"time_local":"21/Sep/2024:15:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d673b52d-d2b9-4230-ab62-efc46cc73ece? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"49d9557f50345ef7c985034e67f4fd7d"} device-1 | {"level":"info","message":"GET /devices/d673b52d-d2b9-4230-ab62-efc46cc73ece? 200 14ms","method":"GET","requestID":"49d9557f50345ef7c985034e67f4fd7d","responseTime":14,"status":200,"url":"/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"167f19d0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd673b52d-d2b9-4230-ab62-efc46cc73ece","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd673b52d-d2b9-4230-ab62-efc46cc73ece","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:30.381843108Z"}]},"request_id":"ebe97170-3113-4c60-aca0-2601f6842e51","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.8228192} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"167f40e0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"167f19d0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/a3d71622-8d75-4304-af32-938e9df7d40d? 200 14ms","method":"GET","requestID":"167f19d0-782b-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/a3d71622-8d75-4304-af32-938e9df7d40d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"167f40e0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/d673b52d-d2b9-4230-ab62-efc46cc73ece? 200 13ms","method":"GET","requestID":"167f40e0-782b-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90c1f275-4b93-4939-8e05-44de31ac008c"},"level":"info","message":"Building connection plan","requestID":"e83b5699bbc492fc8d4e16d20aaae048"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"e17676b3-1aa4-4e57-9fe0-cbca0245eb42"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"16cf8637-8992-44c5-910a-cbbef16d6938"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"863464c9-8f86-4050-aae4-263d11965c28"}]},"level":"info","message":"Built pairwise service configurations","requestID":"e83b5699bbc492fc8d4e16d20aaae048"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"1681b1e0-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"1681b1e0-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"1681b1e0-782b-11ef-938d-0b888d58857d","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/35d79888-7405-44b8-9518-cccbfe0a4bb3?id=2cb5807e-ce51-4891-9d69-8ac1d49c312d","ws://localhost/rooms/35d79888-7405-44b8-9518-cccbfe0a4bb3?id=0e9f910e-dd4c-481c-8040-f4118ed86462"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"e83b5699bbc492fc8d4e16d20aaae048"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"16822710-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1434,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1434,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.937208,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"16822710-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931192,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Mn0.Ly1vYlWJBp1Q_Z8LlmKOrN-nIekiAGV6GZmmaErMjWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"16822710-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"7c17736d-1214-408f-a35b-b38d80cf6b7d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.8465703} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"45e22c86-773b-42ae-9cbe-2ed9b8bd258b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.8470774} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"16822710-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"16822710-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"16822710-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/8337c8b2-fc21-4b6f-bb61-55012876ebbf'","requestID":"16822710-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/8337c8b2-fc21-4b6f-bb61-55012876ebbf'","requestID":"16822710-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"16822710-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 26ms","method":"POST","requestID":"16822710-782b-11ef-88d4-5fea3f61bb98","responseTime":26,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"16822710-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8337c8b2-fc21-4b6f-bb61-55012876ebbf' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8337c8b2-fc21-4b6f-bb61-55012876ebbf","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"16888fb0-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0e9f910e-dd4c-481c-8040-f4118ed86462\" in room \"http://localhost/rooms/35d79888-7405-44b8-9518-cccbfe0a4bb3\"","requestID":"16888fb0-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"16888fb0-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"1688ddd0-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2cb5807e-ce51-4891-9d69-8ac1d49c312d\" in room \"http://localhost/rooms/35d79888-7405-44b8-9518-cccbfe0a4bb3\"","requestID":"1688ddd0-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"1688ddd0-782b-11ef-938d-0b888d58857d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9b3b8e9bd93beb07b686dd3d21e13fbf","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9b3b8e9bd93beb07b686dd3d21e13fbf","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2cb5807e-ce51-4891-9d69-8ac1d49c312d\" in room \"http://localhost/rooms/35d79888-7405-44b8-9518-cccbfe0a4bb3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2cb5807e-ce51-4891-9d69-8ac1d49c312d\" in room \"http://localhost/rooms/35d79888-7405-44b8-9518-cccbfe0a4bb3\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2cb5807e-ce51-4891-9d69-8ac1d49c312d\" in room \"http://localhost/rooms/35d79888-7405-44b8-9518-cccbfe0a4bb3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2cb5807e-ce51-4891-9d69-8ac1d49c312d\" in room \"http://localhost/rooms/35d79888-7405-44b8-9518-cccbfe0a4bb3\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2cb5807e-ce51-4891-9d69-8ac1d49c312d\" in room \"http://localhost/rooms/35d79888-7405-44b8-9518-cccbfe0a4bb3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2cb5807e-ce51-4891-9d69-8ac1d49c312d\" in room \"http://localhost/rooms/35d79888-7405-44b8-9518-cccbfe0a4bb3\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2cb5807e-ce51-4891-9d69-8ac1d49c312d\" in room \"http://localhost/rooms/35d79888-7405-44b8-9518-cccbfe0a4bb3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2cb5807e-ce51-4891-9d69-8ac1d49c312d\" in room \"http://localhost/rooms/35d79888-7405-44b8-9518-cccbfe0a4bb3\""} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/8337c8b2-fc21-4b6f-bb61-55012876ebbf"}}},"level":"info","message":"received a callback","requestID":"9b3b8e9bd93beb07b686dd3d21e13fbf"} device-1 | {"data":{"peerconnection":"8337c8b2-fc21-4b6f-bb61-55012876ebbf","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"9b3b8e9bd93beb07b686dd3d21e13fbf","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"9b3b8e9bd93beb07b686dd3d21e13fbf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90c1f275-4b93-4939-8e05-44de31ac008c"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"e83b5699bbc492fc8d4e16d20aaae048"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"168cd570-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"data":{"peerconnection":"8337c8b2-fc21-4b6f-bb61-55012876ebbf","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1435,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3d71622-8d75-4304-af32-938e9df7d40d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6c367436-2a4b-4e39-80ca-66f558a4f790","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.9084804} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1435,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.372044,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"168cd570-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"168cd570-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8337c8b2-fc21-4b6f-bb61-55012876ebbf' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8337c8b2-fc21-4b6f-bb61-55012876ebbf","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"168cd570-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a3d71622-8d75-4304-af32-938e9df7d40d/signaling 200 16ms","method":"POST","requestID":"168cd570-782b-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/a3d71622-8d75-4304-af32-938e9df7d40d/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cff0a697cba5bc53b1eeff2c32175449","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"cff0a697cba5bc53b1eeff2c32175449","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"168fbba0-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/8337c8b2-fc21-4b6f-bb61-55012876ebbf"}}},"level":"info","message":"received a callback","requestID":"cff0a697cba5bc53b1eeff2c32175449"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1436,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd673b52d-d2b9-4230-ab62-efc46cc73ece","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d3e05df1-07fc-4824-b0a3-7b033ce08259","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.9274356} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1436,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.757435,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"168fbba0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"1690a600-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"168fbba0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1437,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:32Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"168fbba0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/d673b52d-d2b9-4230-ab62-efc46cc73ece/signaling 200 10ms","method":"POST","requestID":"168fbba0-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8337c8b2-fc21-4b6f-bb61-55012876ebbf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"60152760-6fca-49e4-81e4-7c0274891cb3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.9333029} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1437,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.566128,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/8337c8b2-fc21-4b6f-bb61-55012876ebbf","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1690a600-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/8337c8b2-fc21-4b6f-bb61-55012876ebbf","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1690a600-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"1690a600-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/8337c8b2-fc21-4b6f-bb61-55012876ebbf 200 9ms","method":"GET","requestID":"1690a600-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/peerconnections/8337c8b2-fc21-4b6f-bb61-55012876ebbf"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 27ms","method":"POST","requestID":"cff0a697cba5bc53b1eeff2c32175449","responseTime":27,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"cff0a697cba5bc53b1eeff2c32175449"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"16942870-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1438,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd673b52d-d2b9-4230-ab62-efc46cc73ece","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3f13584a-933d-4134-ba2a-5765db7e1f0f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.9553134} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1438,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.456539,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"16942870-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"16942870-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"16942870-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/d673b52d-d2b9-4230-ab62-efc46cc73ece/signaling 200 8ms","method":"POST","requestID":"16942870-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1695af10-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1439,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3d71622-8d75-4304-af32-938e9df7d40d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0e3972be-530c-4912-8dae-2de98c2d9b02","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931192.9660938} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1439,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.181728,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1695af10-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1695af10-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1695af10-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a3d71622-8d75-4304-af32-938e9df7d40d/signaling 200 9ms","method":"POST","requestID":"1695af10-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/a3d71622-8d75-4304-af32-938e9df7d40d/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Mn0.Ly1vYlWJBp1Q_Z8LlmKOrN-nIekiAGV6GZmmaErMjWI","level":"info","message":"auth send jwt","requestID":"7f4d55b69f041452ce290a9cbf6498c1"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7f4d55b69f041452ce290a9cbf6498c1","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/90c1f275-4b93-4939-8e05-44de31ac008c","requestID":"7f4d55b69f041452ce290a9cbf6498c1"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1440,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1440,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.857726,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/90c1f275-4b93-4939-8e05-44de31ac008c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"7f4d55b69f041452ce290a9cbf6498c1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/90c1f275-4b93-4939-8e05-44de31ac008c","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931192,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Mn0.Ly1vYlWJBp1Q_Z8LlmKOrN-nIekiAGV6GZmmaErMjWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7f4d55b69f041452ce290a9cbf6498c1","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/90c1f275-4b93-4939-8e05-44de31ac008c","requestID":"7f4d55b69f041452ce290a9cbf6498c1"} gateway-1 | {"time_local":"21/Sep/2024:15:06:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/90c1f275-4b93-4939-8e05-44de31ac008c HTTP/1.1","status": "200","body_bytes_sent":"1285","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7f4d55b69f041452ce290a9cbf6498c1"} experiment-1 | {"level":"info","message":"GET /experiments/90c1f275-4b93-4939-8e05-44de31ac008c 200 12ms","method":"GET","requestID":"7f4d55b69f041452ce290a9cbf6498c1","responseTime":12,"status":200,"url":"/experiments/90c1f275-4b93-4939-8e05-44de31ac008c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5M30.AADz6qGjU-k2m1x-0MinNWbrc5gSJj4wbQam8yzHg_A","level":"info","message":"auth send jwt","requestID":"7759d989d397c589765411deefbf4ab8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7759d989d397c589765411deefbf4ab8","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/90c1f275-4b93-4939-8e05-44de31ac008c","requestID":"7759d989d397c589765411deefbf4ab8"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1441,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:33Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1441,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.679059,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:33Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/90c1f275-4b93-4939-8e05-44de31ac008c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"7759d989d397c589765411deefbf4ab8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/90c1f275-4b93-4939-8e05-44de31ac008c","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931193,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5M30.AADz6qGjU-k2m1x-0MinNWbrc5gSJj4wbQam8yzHg_A"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7759d989d397c589765411deefbf4ab8","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90c1f275-4b93-4939-8e05-44de31ac008c"},"level":"info","message":"Attempting to finish experiment","requestID":"7759d989d397c589765411deefbf4ab8"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"169dec70-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1442,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:33Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1442,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.07069,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:33Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/8337c8b2-fc21-4b6f-bb61-55012876ebbf","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"169dec70-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/8337c8b2-fc21-4b6f-bb61-55012876ebbf","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931193,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5M30.AADz6qGjU-k2m1x-0MinNWbrc5gSJj4wbQam8yzHg_A"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"169dec70-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/8337c8b2-fc21-4b6f-bb61-55012876ebbf","device":"a3d71622-8d75-4304-af32-938e9df7d40d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"21/Sep/2024:15:06:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/35d79888-7405-44b8-9518-cccbfe0a4bb3?id=0e9f910e-dd4c-481c-8040-f4118ed86462 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.153","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b905339bd5d0616893b614088388b40f"} gateway-1 | {"time_local":"21/Sep/2024:15:06:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/35d79888-7405-44b8-9518-cccbfe0a4bb3?id=2cb5807e-ce51-4891-9d69-8ac1d49c312d HTTP/1.1","status": "101","body_bytes_sent":"874","request_time":"0.152","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"270b95e8115084ea1f126a3beacc5958"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/8337c8b2-fc21-4b6f-bb61-55012876ebbf","device":"d673b52d-d2b9-4230-ab62-efc46cc73ece","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"0e9f910e-dd4c-481c-8040-f4118ed86462\" in room \"http://localhost/rooms/35d79888-7405-44b8-9518-cccbfe0a4bb3\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"0e9f910e-dd4c-481c-8040-f4118ed86462\" from room \"http://localhost/rooms/35d79888-7405-44b8-9518-cccbfe0a4bb3\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"2cb5807e-ce51-4891-9d69-8ac1d49c312d\" in room \"http://localhost/rooms/35d79888-7405-44b8-9518-cccbfe0a4bb3\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"2cb5807e-ce51-4891-9d69-8ac1d49c312d\" from room \"http://localhost/rooms/35d79888-7405-44b8-9518-cccbfe0a4bb3\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8337c8b2-fc21-4b6f-bb61-55012876ebbf' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/8337c8b2-fc21-4b6f-bb61-55012876ebbf' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8337c8b2-fc21-4b6f-bb61-55012876ebbf","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8337c8b2-fc21-4b6f-bb61-55012876ebbf': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8337c8b2-fc21-4b6f-bb61-55012876ebbf","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"affab2d9-749c-4165-86fa-378b6b73e8ac","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931193.0311477} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"34dd113e-7fc0-4aa2-994e-1df007b52108","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931193.0314705} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"afecad6f019f1d15ed46ea9665174ecc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"afecad6f019f1d15ed46ea9665174ecc","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"169dec70-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3ab4e5044d52aa9604053f1d94d1bfa4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/8337c8b2-fc21-4b6f-bb61-55012876ebbf"}}},"level":"info","message":"received a callback","requestID":"afecad6f019f1d15ed46ea9665174ecc"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3ab4e5044d52aa9604053f1d94d1bfa4","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/8337c8b2-fc21-4b6f-bb61-55012876ebbf"}}},"level":"info","message":"received a callback","requestID":"3ab4e5044d52aa9604053f1d94d1bfa4"} device-1 | {"data":{"peerconnection":"8337c8b2-fc21-4b6f-bb61-55012876ebbf","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"169dec70-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/8337c8b2-fc21-4b6f-bb61-55012876ebbf 204 35ms","method":"DELETE","requestID":"169dec70-782b-11ef-88d4-5fea3f61bb98","responseTime":35,"status":204,"url":"/peerconnections/8337c8b2-fc21-4b6f-bb61-55012876ebbf"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90c1f275-4b93-4939-8e05-44de31ac008c"},"level":"info","message":"Successfully finished experiment","requestID":"7759d989d397c589765411deefbf4ab8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"16a5dbb0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1443,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:33Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd673b52d-d2b9-4230-ab62-efc46cc73ece","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e948503c-4a17-4b24-ac26-0424526b7b07","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931193.072138} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1443,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.810734,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"16a5dbb0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"16a5dbb0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"16a5dbb0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/d673b52d-d2b9-4230-ab62-efc46cc73ece/signaling 200 10ms","method":"POST","requestID":"16a5dbb0-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"16a7b070-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F90c1f275-4b93-4939-8e05-44de31ac008c': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F90c1f275-4b93-4939-8e05-44de31ac008c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"267c2735-25fd-4b79-b5d7-0f3cf059fd1e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931193.0796764} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"78afc394-7c82-4c8c-9683-958f8ee03252","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931193.0799942} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"7759d989d397c589765411deefbf4ab8","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1444,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:33Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3d71622-8d75-4304-af32-938e9df7d40d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1c443f05-2a65-4458-a85a-3e30c9220268","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931193.0839539} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1444,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.568709,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"16a7b070-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"16a7b070-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"16a7b070-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a3d71622-8d75-4304-af32-938e9df7d40d/signaling 200 10ms","method":"POST","requestID":"16a7b070-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/a3d71622-8d75-4304-af32-938e9df7d40d/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/90c1f275-4b93-4939-8e05-44de31ac008c","requestID":"7759d989d397c589765411deefbf4ab8"} gateway-1 | {"time_local":"21/Sep/2024:15:06:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/90c1f275-4b93-4939-8e05-44de31ac008c HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.142","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7759d989d397c589765411deefbf4ab8"} experiment-1 | {"level":"info","message":"DELETE /experiments/90c1f275-4b93-4939-8e05-44de31ac008c 204 138ms","method":"DELETE","requestID":"7759d989d397c589765411deefbf4ab8","responseTime":138,"status":204,"url":"/experiments/90c1f275-4b93-4939-8e05-44de31ac008c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 113ms","method":"POST","requestID":"afecad6f019f1d15ed46ea9665174ecc","responseTime":113,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.115","http_referrer":"","http_user_agent":"node-fetch","requestID":"afecad6f019f1d15ed46ea9665174ecc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 113ms","method":"POST","requestID":"3ab4e5044d52aa9604053f1d94d1bfa4","responseTime":113,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.116","http_referrer":"","http_user_agent":"node-fetch","requestID":"3ab4e5044d52aa9604053f1d94d1bfa4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5M30.AADz6qGjU-k2m1x-0MinNWbrc5gSJj4wbQam8yzHg_A","level":"info","message":"auth send jwt","requestID":"cb8e80723bbe8c114e1fa5aba55b85bf"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"cb8e80723bbe8c114e1fa5aba55b85bf","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"cb8e80723bbe8c114e1fa5aba55b85bf"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1445,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:33Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1445,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.070406,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:33Z"} gateway-1 | {"time_local":"21/Sep/2024:15:06:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1745","request_time":"0.725","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"099259bed436e230c170d542350d49db"} gateway-1 | {"time_local":"21/Sep/2024:15:06:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1744","request_time":"0.713","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4d59fdf30792998197a31e5c34ee2302"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cb8e80723bbe8c114e1fa5aba55b85bf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931193,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5M30.AADz6qGjU-k2m1x-0MinNWbrc5gSJj4wbQam8yzHg_A"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cb8e80723bbe8c114e1fa5aba55b85bf","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee541ff4-9479-4b02-94fd-fbf761939bf5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3683e852-fd5b-4dbe-b138-38608f4b6837","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931193.172347} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cb8e80723bbe8c114e1fa5aba55b85bf","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a3d71622-8d75-4304-af32-938e9df7d40d' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"91e52a36-e6cc-403a-be30-fa94fe4f7e12","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931193.1805189} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"cb8e80723bbe8c114e1fa5aba55b85bf","responseTime":3,"status":200,"url":"/relations/update"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/d673b52d-d2b9-4230-ab62-efc46cc73ece' closed"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee541ff4-9479-4b02-94fd-fbf761939bf5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"4a63a4d4-6d71-4622-addf-a8c34a9ed562","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931193.190562} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8cc5d5a0-915b-43dd-92a9-4004890a2130","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931193.190887} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"cb8e80723bbe8c114e1fa5aba55b85bf","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee541ff4-9479-4b02-94fd-fbf761939bf5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee541ff4-9479-4b02-94fd-fbf761939bf5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:33.190530226Z"}]},"request_id":"0e88ce1a-a634-4108-b49a-e488a29ea151","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931193.1947591} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"cb8e80723bbe8c114e1fa5aba55b85bf","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"cb8e80723bbe8c114e1fa5aba55b85bf"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"cb8e80723bbe8c114e1fa5aba55b85bf","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cb8e80723bbe8c114e1fa5aba55b85bf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5M30.AADz6qGjU-k2m1x-0MinNWbrc5gSJj4wbQam8yzHg_A","level":"info","message":"auth send jwt","requestID":"cae498be8d94297873030a61d786f47e"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"cae498be8d94297873030a61d786f47e","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"cae498be8d94297873030a61d786f47e"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1446,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:33Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1446,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.774595,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"cae498be8d94297873030a61d786f47e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931193,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5M30.AADz6qGjU-k2m1x-0MinNWbrc5gSJj4wbQam8yzHg_A"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cae498be8d94297873030a61d786f47e","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4918e8b-be81-4ac4-a6b5-0c48a5e7620a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7ec5a629-009e-4b81-9e00-e5ff13e52a82","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931193.215902} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"cae498be8d94297873030a61d786f47e","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8a0ebc3a-8420-4b4f-ba92-fe20be7a6978","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931193.2194855} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"cae498be8d94297873030a61d786f47e","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4918e8b-be81-4ac4-a6b5-0c48a5e7620a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"b7408234-4212-4b98-b23e-8add1111c6a6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931193.2349093} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1e95c701-e32e-40a9-970f-94b49eebfcbf","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931193.2351356} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"cae498be8d94297873030a61d786f47e","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4918e8b-be81-4ac4-a6b5-0c48a5e7620a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4918e8b-be81-4ac4-a6b5-0c48a5e7620a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:33.234851312Z"}]},"request_id":"9e5b00a9-e017-4746-97eb-3210a0e29d2c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931193.2431746} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cae498be8d94297873030a61d786f47e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"cae498be8d94297873030a61d786f47e"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"cae498be8d94297873030a61d786f47e","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cae498be8d94297873030a61d786f47e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5M30.AADz6qGjU-k2m1x-0MinNWbrc5gSJj4wbQam8yzHg_A","level":"info","message":"auth send jwt","requestID":"974fe6d6ff463a6fb7091a91be9600ee"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"974fe6d6ff463a6fb7091a91be9600ee","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"974fe6d6ff463a6fb7091a91be9600ee"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1447,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:33Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1447,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.454768,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"974fe6d6ff463a6fb7091a91be9600ee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931193,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5M30.AADz6qGjU-k2m1x-0MinNWbrc5gSJj4wbQam8yzHg_A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"974fe6d6ff463a6fb7091a91be9600ee","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4918e8b-be81-4ac4-a6b5-0c48a5e7620a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4918e8b-be81-4ac4-a6b5-0c48a5e7620a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:33.234851312Z"}]},"request_id":"74f13047-be67-4573-9e21-7f3f7811f9e6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931193.7302177} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"974fe6d6ff463a6fb7091a91be9600ee","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4d68c63c-e393-46f2-a21c-733c5b1e00bb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931193.736655} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"974fe6d6ff463a6fb7091a91be9600ee","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4918e8b-be81-4ac4-a6b5-0c48a5e7620a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4918e8b-be81-4ac4-a6b5-0c48a5e7620a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:33.234851312Z"}]},"request_id":"18f58e70-9ff1-4df0-a95c-273c308e42ce","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931193.7475874} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"974fe6d6ff463a6fb7091a91be9600ee","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"974fe6d6ff463a6fb7091a91be9600ee"} gateway-1 | {"time_local":"21/Sep/2024:15:06:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.038","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"974fe6d6ff463a6fb7091a91be9600ee"} device-1 | {"level":"info","message":"PATCH /devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a 200 33ms","method":"PATCH","requestID":"974fe6d6ff463a6fb7091a91be9600ee","responseTime":33,"status":200,"url":"/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5M30.AADz6qGjU-k2m1x-0MinNWbrc5gSJj4wbQam8yzHg_A","level":"info","message":"auth send jwt","requestID":"3f757163e082fdd357b6bdf4f8b47b2a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3f757163e082fdd357b6bdf4f8b47b2a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3f757163e082fdd357b6bdf4f8b47b2a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1448,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:33Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1448,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.021085,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"3f757163e082fdd357b6bdf4f8b47b2a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931193,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5M30.AADz6qGjU-k2m1x-0MinNWbrc5gSJj4wbQam8yzHg_A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3f757163e082fdd357b6bdf4f8b47b2a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3f757163e082fdd357b6bdf4f8b47b2a"} device-1 | {"level":"info","message":"POST /devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a/websocket 200 20ms","method":"POST","requestID":"3f757163e082fdd357b6bdf4f8b47b2a","responseTime":20,"status":200,"url":"/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:06:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"3f757163e082fdd357b6bdf4f8b47b2a"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5a84cc66b5af7f8340c99713744fc94e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5a84cc66b5af7f8340c99713744fc94e","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ee541ff4-9479-4b02-94fd-fbf761939bf5/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5a84cc66b5af7f8340c99713744fc94e"} device-1 | {"level":"info","message":"OPTIONS /devices/ee541ff4-9479-4b02-94fd-fbf761939bf5/websocket 200 1ms","method":"OPTIONS","requestID":"5a84cc66b5af7f8340c99713744fc94e","responseTime":1,"status":200,"url":"/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg","level":"info","message":"auth send jwt","requestID":"a30677aae1447da9e4852bfeee0b9271"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a30677aae1447da9e4852bfeee0b9271","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a30677aae1447da9e4852bfeee0b9271"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1449,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1449,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.295991,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a30677aae1447da9e4852bfeee0b9271","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931195,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a30677aae1447da9e4852bfeee0b9271","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a30677aae1447da9e4852bfeee0b9271"} device-1 | {"level":"info","message":"POST /devices/ee541ff4-9479-4b02-94fd-fbf761939bf5/websocket 200 21ms","method":"POST","requestID":"a30677aae1447da9e4852bfeee0b9271","responseTime":21,"status":200,"url":"/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ee541ff4-9479-4b02-94fd-fbf761939bf5/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a30677aae1447da9e4852bfeee0b9271"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f0690696ade9ade78887f155de3513b2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f0690696ade9ade78887f155de3513b2","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ee541ff4-9479-4b02-94fd-fbf761939bf5? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f0690696ade9ade78887f155de3513b2"} device-1 | {"level":"info","message":"OPTIONS /devices/ee541ff4-9479-4b02-94fd-fbf761939bf5? 200 1ms","method":"OPTIONS","requestID":"f0690696ade9ade78887f155de3513b2","responseTime":1,"status":200,"url":"/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg","level":"info","message":"auth send jwt","requestID":"4e28ee96241edb17ca85d5e729304e68"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"4e28ee96241edb17ca85d5e729304e68","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4e28ee96241edb17ca85d5e729304e68"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1450,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1450,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.345331,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"4e28ee96241edb17ca85d5e729304e68","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931195,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4e28ee96241edb17ca85d5e729304e68","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee541ff4-9479-4b02-94fd-fbf761939bf5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee541ff4-9479-4b02-94fd-fbf761939bf5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:33.190530226Z"}]},"request_id":"ae369a94-5913-47f2-b13b-8ecb158e3821","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.3680477} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4e28ee96241edb17ca85d5e729304e68","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3ef3ae59-4056-4141-b3bb-ad3e31f972e7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.376307} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"4e28ee96241edb17ca85d5e729304e68","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee541ff4-9479-4b02-94fd-fbf761939bf5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee541ff4-9479-4b02-94fd-fbf761939bf5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:33.190530226Z"}]},"request_id":"da601132-8708-4bad-9c08-28596440d04a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.3863778} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4e28ee96241edb17ca85d5e729304e68","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4e28ee96241edb17ca85d5e729304e68"} gateway-1 | {"time_local":"21/Sep/2024:15:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ee541ff4-9479-4b02-94fd-fbf761939bf5? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.047","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4e28ee96241edb17ca85d5e729304e68"} device-1 | {"level":"info","message":"PATCH /devices/ee541ff4-9479-4b02-94fd-fbf761939bf5? 200 39ms","method":"PATCH","requestID":"4e28ee96241edb17ca85d5e729304e68","responseTime":39,"status":200,"url":"/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg","level":"info","message":"auth send jwt","requestID":"733c8242cd0284c9b81c3a9504498f9f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"733c8242cd0284c9b81c3a9504498f9f","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"733c8242cd0284c9b81c3a9504498f9f"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1451,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1451,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.388754,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"733c8242cd0284c9b81c3a9504498f9f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931195,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"733c8242cd0284c9b81c3a9504498f9f","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee541ff4-9479-4b02-94fd-fbf761939bf5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee541ff4-9479-4b02-94fd-fbf761939bf5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:33.190530226Z"}]},"request_id":"9b2293d7-0fef-452f-b064-01500ea99a0e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.417247} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"733c8242cd0284c9b81c3a9504498f9f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"733c8242cd0284c9b81c3a9504498f9f"} gateway-1 | {"time_local":"21/Sep/2024:15:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ee541ff4-9479-4b02-94fd-fbf761939bf5? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"733c8242cd0284c9b81c3a9504498f9f"} device-1 | {"level":"info","message":"GET /devices/ee541ff4-9479-4b02-94fd-fbf761939bf5? 200 16ms","method":"GET","requestID":"733c8242cd0284c9b81c3a9504498f9f","responseTime":16,"status":200,"url":"/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg","level":"info","message":"auth send jwt","requestID":"c4a9a1be57c2d30e79eaf0edc733cf17"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c4a9a1be57c2d30e79eaf0edc733cf17","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c4a9a1be57c2d30e79eaf0edc733cf17"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1452,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1452,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.173698,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c4a9a1be57c2d30e79eaf0edc733cf17","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931195,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c4a9a1be57c2d30e79eaf0edc733cf17","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4918e8b-be81-4ac4-a6b5-0c48a5e7620a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4918e8b-be81-4ac4-a6b5-0c48a5e7620a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:33.234851312Z"}]},"request_id":"71eb8843-c75b-4eb2-8cbc-194011161bff","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.4392216} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c4a9a1be57c2d30e79eaf0edc733cf17","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c4a9a1be57c2d30e79eaf0edc733cf17"} gateway-1 | {"time_local":"21/Sep/2024:15:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c4a9a1be57c2d30e79eaf0edc733cf17"} device-1 | {"level":"info","message":"GET /devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a? 200 14ms","method":"GET","requestID":"c4a9a1be57c2d30e79eaf0edc733cf17","responseTime":14,"status":200,"url":"/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg","level":"info","message":"auth send jwt","requestID":"8d8bb0575590c7886b4b013bfbc494bc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8d8bb0575590c7886b4b013bfbc494bc","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"8d8bb0575590c7886b4b013bfbc494bc"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1453,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1453,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.301689,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"8d8bb0575590c7886b4b013bfbc494bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931195,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8d8bb0575590c7886b4b013bfbc494bc","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c880553b-7579-4ac2-8335-ed30e38826fb"},"level":"info","message":"Attempting to run experiment","requestID":"8d8bb0575590c7886b4b013bfbc494bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c880553b-7579-4ac2-8335-ed30e38826fb"},"level":"info","message":"Attempting to book experiment","requestID":"8d8bb0575590c7886b4b013bfbc494bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c880553b-7579-4ac2-8335-ed30e38826fb"},"level":"info","message":"Successfully booked experiment","requestID":"8d8bb0575590c7886b4b013bfbc494bc"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"18165ba0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"181682b0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1454,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1454,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.563608,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1455,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"18165ba0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931195,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"18165ba0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1455,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.77792,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"181682b0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931195,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"181682b0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee541ff4-9479-4b02-94fd-fbf761939bf5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee541ff4-9479-4b02-94fd-fbf761939bf5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:33.190530226Z"}]},"request_id":"a0042e52-c325-46c2-90d1-7edb1291a84c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.489977} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"18165ba0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4918e8b-be81-4ac4-a6b5-0c48a5e7620a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4918e8b-be81-4ac4-a6b5-0c48a5e7620a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:33.234851312Z"}]},"request_id":"24fd0331-54e4-4c66-a5a7-35ae3e29937c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.4905775} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"181682b0-782b-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"18165ba0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/ee541ff4-9479-4b02-94fd-fbf761939bf5? 200 12ms","method":"GET","requestID":"18165ba0-782b-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"181682b0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a? 200 12ms","method":"GET","requestID":"181682b0-782b-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c880553b-7579-4ac2-8335-ed30e38826fb"},"level":"info","message":"Setting up experiment","requestID":"8d8bb0575590c7886b4b013bfbc494bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c880553b-7579-4ac2-8335-ed30e38826fb"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"8d8bb0575590c7886b4b013bfbc494bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c880553b-7579-4ac2-8335-ed30e38826fb"},"level":"info","message":"Successfully locked booking for experiment","requestID":"8d8bb0575590c7886b4b013bfbc494bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c880553b-7579-4ac2-8335-ed30e38826fb"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"8d8bb0575590c7886b4b013bfbc494bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c880553b-7579-4ac2-8335-ed30e38826fb"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"8d8bb0575590c7886b4b013bfbc494bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c880553b-7579-4ac2-8335-ed30e38826fb"},"level":"info","message":"Attempting to update booking for experiment","requestID":"8d8bb0575590c7886b4b013bfbc494bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c880553b-7579-4ac2-8335-ed30e38826fb"},"level":"info","message":"Successfully updated booking for experiment","requestID":"8d8bb0575590c7886b4b013bfbc494bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c880553b-7579-4ac2-8335-ed30e38826fb"},"level":"info","message":"Successfully set up experiment","requestID":"8d8bb0575590c7886b4b013bfbc494bc"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"181d1260-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"181d3970-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"181d6080-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c880553b-7579-4ac2-8335-ed30e38826fb"},"level":"info","message":"Successfully running experiment","requestID":"8d8bb0575590c7886b4b013bfbc494bc"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1456,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1457,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1456,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.909097,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1457,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.534326,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:43866","level":"info","msg":"Received request.","req_id":1458,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"181d1260-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931195,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"181d1260-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"181d3970-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931195,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"181d3970-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43866","level":"info","msg":"Sent response.","req_id":1458,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.39037,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee541ff4-9479-4b02-94fd-fbf761939bf5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5164af87-9b61-424c-b9f6-0e7d434e739a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.53325} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"181d6080-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"181d6080-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee541ff4-9479-4b02-94fd-fbf761939bf5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee541ff4-9479-4b02-94fd-fbf761939bf5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:33.190530226Z"}]},"request_id":"41c0fb95-319f-4481-8e60-6f082aafca6a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.5366735} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"181d1260-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"181d6080-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4918e8b-be81-4ac4-a6b5-0c48a5e7620a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4918e8b-be81-4ac4-a6b5-0c48a5e7620a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:33.234851312Z"}]},"request_id":"5d41e597-384d-48c8-a493-403ad6eaee7d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.539033} device-1 | {"level":"info","message":"POST /devices/ee541ff4-9479-4b02-94fd-fbf761939bf5/signaling 200 12ms","method":"POST","requestID":"181d6080-782b-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"181d3970-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"181faa70-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1459,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"181d1260-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/ee541ff4-9479-4b02-94fd-fbf761939bf5? 200 23ms","method":"GET","requestID":"181d1260-782b-11ef-88d4-5fea3f61bb98","responseTime":23,"status":200,"url":"/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"181d3970-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a? 200 23ms","method":"GET","requestID":"181d3970-782b-11ef-88d4-5fea3f61bb98","responseTime":23,"status":200,"url":"/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4918e8b-be81-4ac4-a6b5-0c48a5e7620a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1f58e0f8-a58e-45f1-b6da-302133a6e1e1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.5508513} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"18210a00-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1459,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.88932,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"181faa70-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"181faa70-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc880553b-7579-4ac2-8335-ed30e38826fb#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc880553b-7579-4ac2-8335-ed30e38826fb","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"d9938a96-9ee6-40e4-bb87-dab5057831c3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.552774} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9084a2c3-0776-4286-9685-faa1ddbba99d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.5530527} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"181faa70-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a/signaling 200 12ms","method":"POST","requestID":"181faa70-782b-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"8d8bb0575590c7886b4b013bfbc494bc","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1460,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee541ff4-9479-4b02-94fd-fbf761939bf5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"90dcf062-48f5-40c6-a4dd-3c49a28352fb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.558995} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1460,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.000434,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"18210a00-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"18210a00-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"18210a00-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/c880553b-7579-4ac2-8335-ed30e38826fb","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"8d8bb0575590c7886b4b013bfbc494bc"} device-1 | {"level":"info","message":"POST /devices/ee541ff4-9479-4b02-94fd-fbf761939bf5/signaling 200 11ms","method":"POST","requestID":"18210a00-782b-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5/signaling"} gateway-1 | {"time_local":"21/Sep/2024:15:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.120","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8d8bb0575590c7886b4b013bfbc494bc"} experiment-1 | {"level":"info","message":"POST /experiments? 201 114ms","method":"POST","requestID":"8d8bb0575590c7886b4b013bfbc494bc","responseTime":114,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"18232ce0-782b-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg","level":"info","message":"auth send jwt","requestID":"8f4b6111ad131158401a251e43e9c897"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8f4b6111ad131158401a251e43e9c897","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1461,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8f4b6111ad131158401a251e43e9c897"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4918e8b-be81-4ac4-a6b5-0c48a5e7620a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e8b25370-a473-48ce-b440-2b915f8e2e14","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.5710735} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1461,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.190615,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1462,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"18232ce0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"18232ce0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1462,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.774186,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"8f4b6111ad131158401a251e43e9c897","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931195,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8f4b6111ad131158401a251e43e9c897","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"18232ce0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a/signaling 200 10ms","method":"POST","requestID":"18232ce0-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee541ff4-9479-4b02-94fd-fbf761939bf5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee541ff4-9479-4b02-94fd-fbf761939bf5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:33.190530226Z"}]},"request_id":"654a7b0f-eed3-42f6-8234-d4d980f9b522","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.577488} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c880553b-7579-4ac2-8335-ed30e38826fb"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"8d8bb0575590c7886b4b013bfbc494bc"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8f4b6111ad131158401a251e43e9c897","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"182528b0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"18254fc0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8f4b6111ad131158401a251e43e9c897"} gateway-1 | {"time_local":"21/Sep/2024:15:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ee541ff4-9479-4b02-94fd-fbf761939bf5? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8f4b6111ad131158401a251e43e9c897"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1463,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} device-1 | {"level":"info","message":"GET /devices/ee541ff4-9479-4b02-94fd-fbf761939bf5? 200 12ms","method":"GET","requestID":"8f4b6111ad131158401a251e43e9c897","responseTime":12,"status":200,"url":"/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1463,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.720715,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1464,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"182528b0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931195,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"182528b0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1464,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.925484,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"18254fc0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931195,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"18254fc0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg","level":"info","message":"auth send jwt","requestID":"5e3a1f676199599b53361c8cd007a27a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee541ff4-9479-4b02-94fd-fbf761939bf5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee541ff4-9479-4b02-94fd-fbf761939bf5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:33.190530226Z"}]},"request_id":"ec6d2bc3-a24c-4d3e-8f43-f9301bdff57f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.5867784} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5e3a1f676199599b53361c8cd007a27a","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"182528b0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4918e8b-be81-4ac4-a6b5-0c48a5e7620a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4918e8b-be81-4ac4-a6b5-0c48a5e7620a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:33.234851312Z"}]},"request_id":"10434a33-d85e-4ce3-ac1c-0b85c6ff583f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.5886514} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"18254fc0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5e3a1f676199599b53361c8cd007a27a"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1465,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1465,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.08712,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"5e3a1f676199599b53361c8cd007a27a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931195,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5e3a1f676199599b53361c8cd007a27a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"182528b0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/ee541ff4-9479-4b02-94fd-fbf761939bf5? 200 17ms","method":"GET","requestID":"182528b0-782b-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"18254fc0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a? 200 17ms","method":"GET","requestID":"18254fc0-782b-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c880553b-7579-4ac2-8335-ed30e38826fb"},"level":"info","message":"Building connection plan","requestID":"8d8bb0575590c7886b4b013bfbc494bc"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"09358b2d-1d44-47d8-81ce-12694422391e"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"3570f180-99e2-4d4b-b06f-400fb62c7994"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"05494710-5580-485a-9142-ba62cb902768"}]},"level":"info","message":"Built pairwise service configurations","requestID":"8d8bb0575590c7886b4b013bfbc494bc"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"18285d00-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"18285d00-782b-11ef-938d-0b888d58857d"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4918e8b-be81-4ac4-a6b5-0c48a5e7620a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4918e8b-be81-4ac4-a6b5-0c48a5e7620a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:33.234851312Z"}]},"request_id":"93220ed3-ed48-4493-bc21-b24ab14fcabb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.6014454} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"18285d00-782b-11ef-938d-0b888d58857d","responseTime":1,"status":201,"url":"/rooms"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5e3a1f676199599b53361c8cd007a27a","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/cca12047-8ac5-4a97-a9bb-30d9d6a72b9f?id=67fe6170-a70d-4cdb-a548-1618cc71678b","ws://localhost/rooms/cca12047-8ac5-4a97-a9bb-30d9d6a72b9f?id=5a67a35c-37f8-40b6-8d8c-1015e7ca7bdb"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"8d8bb0575590c7886b4b013bfbc494bc"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"1828f940-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1466,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1466,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.748872,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1828f940-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931195,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1828f940-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5e3a1f676199599b53361c8cd007a27a"} gateway-1 | {"time_local":"21/Sep/2024:15:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.029","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5e3a1f676199599b53361c8cd007a27a"} device-1 | {"level":"info","message":"GET /devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a? 200 23ms","method":"GET","requestID":"5e3a1f676199599b53361c8cd007a27a","responseTime":23,"status":200,"url":"/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"45c2f083-9e8b-4c25-b44b-6ba3f09adc6b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.6197956} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4ae407a9-8742-4c7c-921e-46af082c1cfa","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.6199558} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1828f940-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"1828f940-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"1828f940-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/2cd90e3a-e8cf-408d-b895-dbba9809e680'","requestID":"1828f940-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/2cd90e3a-e8cf-408d-b895-dbba9809e680'","requestID":"1828f940-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"1828f940-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 27ms","method":"POST","requestID":"1828f940-782b-11ef-88d4-5fea3f61bb98","responseTime":27,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"1828f940-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2cd90e3a-e8cf-408d-b895-dbba9809e680' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2cd90e3a-e8cf-408d-b895-dbba9809e680","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"182e5070-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"67fe6170-a70d-4cdb-a548-1618cc71678b\" in room \"http://localhost/rooms/cca12047-8ac5-4a97-a9bb-30d9d6a72b9f\"","requestID":"182e5070-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"182e5070-782b-11ef-938d-0b888d58857d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"574a89ba063a19ac1b76981fe4a38501","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"574a89ba063a19ac1b76981fe4a38501","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/2cd90e3a-e8cf-408d-b895-dbba9809e680"}}},"level":"info","message":"received a callback","requestID":"574a89ba063a19ac1b76981fe4a38501"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"182f13c0-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5a67a35c-37f8-40b6-8d8c-1015e7ca7bdb\" in room \"http://localhost/rooms/cca12047-8ac5-4a97-a9bb-30d9d6a72b9f\"","requestID":"182f13c0-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"182f13c0-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"67fe6170-a70d-4cdb-a548-1618cc71678b\" in room \"http://localhost/rooms/cca12047-8ac5-4a97-a9bb-30d9d6a72b9f\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"67fe6170-a70d-4cdb-a548-1618cc71678b\" in room \"http://localhost/rooms/cca12047-8ac5-4a97-a9bb-30d9d6a72b9f\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"67fe6170-a70d-4cdb-a548-1618cc71678b\" in room \"http://localhost/rooms/cca12047-8ac5-4a97-a9bb-30d9d6a72b9f\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"67fe6170-a70d-4cdb-a548-1618cc71678b\" in room \"http://localhost/rooms/cca12047-8ac5-4a97-a9bb-30d9d6a72b9f\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2cd90e3a-e8cf-408d-b895-dbba9809e680' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2cd90e3a-e8cf-408d-b895-dbba9809e680","statusDeviceA":"connected","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"574a89ba063a19ac1b76981fe4a38501","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"574a89ba063a19ac1b76981fe4a38501"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d97e89939a4e24922c100aa74d2163e6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d97e89939a4e24922c100aa74d2163e6","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5"}],"status":"new","type":"websocket","url":"http://localhost/peerconnections/2cd90e3a-e8cf-408d-b895-dbba9809e680"}}},"level":"info","message":"received a callback","requestID":"d97e89939a4e24922c100aa74d2163e6"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2cd90e3a-e8cf-408d-b895-dbba9809e680' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2cd90e3a-e8cf-408d-b895-dbba9809e680","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c880553b-7579-4ac2-8335-ed30e38826fb"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"8d8bb0575590c7886b4b013bfbc494bc"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bb26b4407ce5ef8803b29ec4593fc350","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"bb26b4407ce5ef8803b29ec4593fc350","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/2cd90e3a-e8cf-408d-b895-dbba9809e680"}}},"level":"info","message":"received a callback","requestID":"bb26b4407ce5ef8803b29ec4593fc350"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1832e450-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 16ms","method":"POST","requestID":"d97e89939a4e24922c100aa74d2163e6","responseTime":16,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch","requestID":"d97e89939a4e24922c100aa74d2163e6"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1467,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee541ff4-9479-4b02-94fd-fbf761939bf5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5bbc6280-0a37-479d-afc5-3cf5302c8a7f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.67303} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1467,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.190077,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"bb26b4407ce5ef8803b29ec4593fc350","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"bb26b4407ce5ef8803b29ec4593fc350"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1832e450-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1832e450-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2cd90e3a-e8cf-408d-b895-dbba9809e680' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2cd90e3a-e8cf-408d-b895-dbba9809e680","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1832e450-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ee541ff4-9479-4b02-94fd-fbf761939bf5/signaling 200 18ms","method":"POST","requestID":"1832e450-782b-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c04df774e7aa67720d70c131840bc1ec","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c04df774e7aa67720d70c131840bc1ec","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1835f190-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/2cd90e3a-e8cf-408d-b895-dbba9809e680"}}},"level":"info","message":"received a callback","requestID":"c04df774e7aa67720d70c131840bc1ec"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1468,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4918e8b-be81-4ac4-a6b5-0c48a5e7620a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"50da4c4d-7006-485f-ad41-719e3d44db53","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.6931782} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1468,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.186531,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"18368dd0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1835f190-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1835f190-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1469,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1835f190-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a/signaling 200 8ms","method":"POST","requestID":"1835f190-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2cd90e3a-e8cf-408d-b895-dbba9809e680","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5eb77641-71a2-4507-8b7a-0bce4ec9bdf8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.6977932} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1469,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.589674,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2cd90e3a-e8cf-408d-b895-dbba9809e680","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"18368dd0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/2cd90e3a-e8cf-408d-b895-dbba9809e680","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"18368dd0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"18368dd0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/2cd90e3a-e8cf-408d-b895-dbba9809e680 200 8ms","method":"GET","requestID":"18368dd0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/peerconnections/2cd90e3a-e8cf-408d-b895-dbba9809e680"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 24ms","method":"POST","requestID":"c04df774e7aa67720d70c131840bc1ec","responseTime":24,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch","requestID":"c04df774e7aa67720d70c131840bc1ec"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1839c220-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1470,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4918e8b-be81-4ac4-a6b5-0c48a5e7620a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"388b0172-da98-4ce4-94dd-db013c42436d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.7181208} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1470,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.166548,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1839c220-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1839c220-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1839c220-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a/signaling 200 7ms","method":"POST","requestID":"1839c220-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"183b21b0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1471,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee541ff4-9479-4b02-94fd-fbf761939bf5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e74c36b7-54c2-4e57-a250-9fbeaf9567c6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.7281992} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1471,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.906114,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"183b21b0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"183b21b0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"183b21b0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ee541ff4-9479-4b02-94fd-fbf761939bf5/signaling 200 9ms","method":"POST","requestID":"183b21b0-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg","level":"info","message":"auth send jwt","requestID":"a39d229dd4c94736bf2d78c60b302860"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a39d229dd4c94736bf2d78c60b302860","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/c880553b-7579-4ac2-8335-ed30e38826fb","requestID":"a39d229dd4c94736bf2d78c60b302860"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1472,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1472,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.725226,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c880553b-7579-4ac2-8335-ed30e38826fb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a39d229dd4c94736bf2d78c60b302860","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/c880553b-7579-4ac2-8335-ed30e38826fb","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931195,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a39d229dd4c94736bf2d78c60b302860","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/c880553b-7579-4ac2-8335-ed30e38826fb","requestID":"a39d229dd4c94736bf2d78c60b302860"} gateway-1 | {"time_local":"21/Sep/2024:15:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/c880553b-7579-4ac2-8335-ed30e38826fb HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a39d229dd4c94736bf2d78c60b302860"} experiment-1 | {"level":"info","message":"GET /experiments/c880553b-7579-4ac2-8335-ed30e38826fb 200 8ms","method":"GET","requestID":"a39d229dd4c94736bf2d78c60b302860","responseTime":8,"status":200,"url":"/experiments/c880553b-7579-4ac2-8335-ed30e38826fb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg","level":"info","message":"auth send jwt","requestID":"8be615413700846901ffecdb78b3664b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8be615413700846901ffecdb78b3664b","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/c880553b-7579-4ac2-8335-ed30e38826fb","requestID":"8be615413700846901ffecdb78b3664b"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1473,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1473,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.772209,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c880553b-7579-4ac2-8335-ed30e38826fb","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"8be615413700846901ffecdb78b3664b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/c880553b-7579-4ac2-8335-ed30e38826fb","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931195,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"8be615413700846901ffecdb78b3664b","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c880553b-7579-4ac2-8335-ed30e38826fb"},"level":"info","message":"Attempting to finish experiment","requestID":"8be615413700846901ffecdb78b3664b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"18429bc0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1474,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1474,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.021858,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2cd90e3a-e8cf-408d-b895-dbba9809e680","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"18429bc0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/2cd90e3a-e8cf-408d-b895-dbba9809e680","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931195,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"18429bc0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/cca12047-8ac5-4a97-a9bb-30d9d6a72b9f?id=67fe6170-a70d-4cdb-a548-1618cc71678b HTTP/1.1","status": "101","body_bytes_sent":"436","request_time":"0.143","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"7af49919f09fb22365800cda5bcc5bb6"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"67fe6170-a70d-4cdb-a548-1618cc71678b\" in room \"http://localhost/rooms/cca12047-8ac5-4a97-a9bb-30d9d6a72b9f\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"67fe6170-a70d-4cdb-a548-1618cc71678b\" from room \"http://localhost/rooms/cca12047-8ac5-4a97-a9bb-30d9d6a72b9f\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2cd90e3a-e8cf-408d-b895-dbba9809e680","device":"ee541ff4-9479-4b02-94fd-fbf761939bf5","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"21/Sep/2024:15:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/cca12047-8ac5-4a97-a9bb-30d9d6a72b9f?id=5a67a35c-37f8-40b6-8d8c-1015e7ca7bdb HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.141","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b5d05b3dd93aec79cca7dc3bc30d51ca"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"5a67a35c-37f8-40b6-8d8c-1015e7ca7bdb\" in room \"http://localhost/rooms/cca12047-8ac5-4a97-a9bb-30d9d6a72b9f\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"5a67a35c-37f8-40b6-8d8c-1015e7ca7bdb\" from room \"http://localhost/rooms/cca12047-8ac5-4a97-a9bb-30d9d6a72b9f\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2cd90e3a-e8cf-408d-b895-dbba9809e680' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/2cd90e3a-e8cf-408d-b895-dbba9809e680' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2cd90e3a-e8cf-408d-b895-dbba9809e680","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"00f05f9dcfbe10331b442995949cf93c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"00f05f9dcfbe10331b442995949cf93c","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2cd90e3a-e8cf-408d-b895-dbba9809e680': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2cd90e3a-e8cf-408d-b895-dbba9809e680","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"68850795-8277-49c5-9f91-0160b95911f6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.7889428} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"eb96e95b21385cf7c38c1dcf19e265bb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"48e3dded-80b0-4347-94d1-2231224cd8cb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.7892938} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/2cd90e3a-e8cf-408d-b895-dbba9809e680"}}},"level":"info","message":"received a callback","requestID":"00f05f9dcfbe10331b442995949cf93c"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"eb96e95b21385cf7c38c1dcf19e265bb","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/2cd90e3a-e8cf-408d-b895-dbba9809e680"}}},"level":"info","message":"received a callback","requestID":"eb96e95b21385cf7c38c1dcf19e265bb"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"18429bc0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"18429bc0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/2cd90e3a-e8cf-408d-b895-dbba9809e680 204 33ms","method":"DELETE","requestID":"18429bc0-782b-11ef-88d4-5fea3f61bb98","responseTime":33,"status":204,"url":"/peerconnections/2cd90e3a-e8cf-408d-b895-dbba9809e680"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c880553b-7579-4ac2-8335-ed30e38826fb"},"level":"info","message":"Successfully finished experiment","requestID":"8be615413700846901ffecdb78b3664b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1849eec0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1475,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4918e8b-be81-4ac4-a6b5-0c48a5e7620a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7411b5b2-4c54-4492-a9cc-b5bbc3e6805d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.8265734} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1475,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.786152,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1849eec0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1849eec0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1849eec0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a/signaling 200 13ms","method":"POST","requestID":"1849eec0-782b-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc880553b-7579-4ac2-8335-ed30e38826fb': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc880553b-7579-4ac2-8335-ed30e38826fb","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"ce0d415c-1e91-4302-9307-3a36eede10e6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.8342578} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"82b2ee45-9be3-4340-9a1e-9b2939055c99","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.8344116} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"184c38b0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"8be615413700846901ffecdb78b3664b","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1476,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee541ff4-9479-4b02-94fd-fbf761939bf5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b9eab2bf-a812-45ae-8897-6c059332a81f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.8398216} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1476,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.671284,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"184c38b0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"184c38b0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"184c38b0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ee541ff4-9479-4b02-94fd-fbf761939bf5/signaling 200 10ms","method":"POST","requestID":"184c38b0-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/c880553b-7579-4ac2-8335-ed30e38826fb","requestID":"8be615413700846901ffecdb78b3664b"} gateway-1 | {"time_local":"21/Sep/2024:15:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/c880553b-7579-4ac2-8335-ed30e38826fb HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.131","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8be615413700846901ffecdb78b3664b"} gateway-1 | {"time_local":"21/Sep/2024:15:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1744","request_time":"2.113","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"940662d7ec26c10f475a882c36019841"} experiment-1 | {"level":"info","message":"DELETE /experiments/c880553b-7579-4ac2-8335-ed30e38826fb 204 130ms","method":"DELETE","requestID":"8be615413700846901ffecdb78b3664b","responseTime":130,"status":204,"url":"/experiments/c880553b-7579-4ac2-8335-ed30e38826fb"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 106ms","method":"POST","requestID":"00f05f9dcfbe10331b442995949cf93c","responseTime":106,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.108","http_referrer":"","http_user_agent":"node-fetch","requestID":"00f05f9dcfbe10331b442995949cf93c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 107ms","method":"POST","requestID":"eb96e95b21385cf7c38c1dcf19e265bb","responseTime":107,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.110","http_referrer":"","http_user_agent":"node-fetch","requestID":"eb96e95b21385cf7c38c1dcf19e265bb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg","level":"info","message":"auth send jwt","requestID":"18f977a95da528c7a2ef4ab3cbf3f98c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"18f977a95da528c7a2ef4ab3cbf3f98c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"18f977a95da528c7a2ef4ab3cbf3f98c"} gateway-1 | {"time_local":"21/Sep/2024:15:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2069","request_time":"0.596","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f651d2c14a02a8ea2219f311499b071c"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1477,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1477,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.006578,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"18f977a95da528c7a2ef4ab3cbf3f98c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931195,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"18f977a95da528c7a2ef4ab3cbf3f98c","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a4918e8b-be81-4ac4-a6b5-0c48a5e7620a' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d86ccc6a-988e-4b40-ae2e-c4cbb55e71ba","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.926346} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"18f977a95da528c7a2ef4ab3cbf3f98c","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d59d0eee-a867-442a-b537-41812750a9fc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.931123} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"18f977a95da528c7a2ef4ab3cbf3f98c","responseTime":3,"status":200,"url":"/relations/update"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/ee541ff4-9479-4b02-94fd-fbf761939bf5' closed"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"98e9cd66-7219-4d30-8ad0-6f17c42ae325","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.9407806} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"194d91c0-3089-4011-bda1-93adbab15864","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.9409428} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"18f977a95da528c7a2ef4ab3cbf3f98c","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:35.940749276Z"}]},"request_id":"8f02b90b-4eef-4e80-80b3-3076b1fb7bad","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.944948} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"18f977a95da528c7a2ef4ab3cbf3f98c","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"18f977a95da528c7a2ef4ab3cbf3f98c"} gateway-1 | {"time_local":"21/Sep/2024:15:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"18f977a95da528c7a2ef4ab3cbf3f98c"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"18f977a95da528c7a2ef4ab3cbf3f98c","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg","level":"info","message":"auth send jwt","requestID":"28af5358d408fcf1f8748920d943dbbf"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"28af5358d408fcf1f8748920d943dbbf","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"28af5358d408fcf1f8748920d943dbbf"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1478,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1478,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.702712,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"28af5358d408fcf1f8748920d943dbbf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931195,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5NX0.ecH73PfTQ6wZg_C3qynlrZsYsi5t4usup0hpM8tlIOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"28af5358d408fcf1f8748920d943dbbf","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F608fb794-2b9d-4bde-89c1-3011bc078e9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"00fbfd67-f188-4660-9278-294832ff37d4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.9666593} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"28af5358d408fcf1f8748920d943dbbf","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6d2b36d4-eb1b-41ba-ac1a-14b45c7d8e39","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.9711316} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"28af5358d408fcf1f8748920d943dbbf","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F608fb794-2b9d-4bde-89c1-3011bc078e9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"0b407603-cb3b-460e-869b-c819c3687eb4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.986699} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a87e13b6-86e1-4e33-8998-2fcfcec4db0d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.986814} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"28af5358d408fcf1f8748920d943dbbf","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F608fb794-2b9d-4bde-89c1-3011bc078e9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F608fb794-2b9d-4bde-89c1-3011bc078e9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:35.986658824Z"}]},"request_id":"6c2670d6-0250-41af-aa3b-768b13776b98","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931195.9911072} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"28af5358d408fcf1f8748920d943dbbf","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"28af5358d408fcf1f8748920d943dbbf"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"28af5358d408fcf1f8748920d943dbbf","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"28af5358d408fcf1f8748920d943dbbf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Nn0.vX2foaC0S6vD8pM2SGx-Zj9BtDSMIZi7Bh1AoNhitFI","level":"info","message":"auth send jwt","requestID":"4a7511894a63e8ace787f41f892f82dd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4a7511894a63e8ace787f41f892f82dd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4a7511894a63e8ace787f41f892f82dd"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1479,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1479,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.109638,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:36Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"4a7511894a63e8ace787f41f892f82dd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931196,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Nn0.vX2foaC0S6vD8pM2SGx-Zj9BtDSMIZi7Bh1AoNhitFI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4a7511894a63e8ace787f41f892f82dd","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F608fb794-2b9d-4bde-89c1-3011bc078e9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F608fb794-2b9d-4bde-89c1-3011bc078e9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:35.986658824Z"}]},"request_id":"084f1f71-263b-41ba-a557-1e57d2c9dc48","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931196.4936423} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4a7511894a63e8ace787f41f892f82dd","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5adcb426-148c-470a-9af3-b7056adf1de8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931196.4984512} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"4a7511894a63e8ace787f41f892f82dd","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F608fb794-2b9d-4bde-89c1-3011bc078e9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F608fb794-2b9d-4bde-89c1-3011bc078e9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:35.986658824Z"}]},"request_id":"c5324ed3-c734-43fc-bd6e-f9322f559a0a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931196.51002} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4a7511894a63e8ace787f41f892f82dd","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4a7511894a63e8ace787f41f892f82dd"} device-1 | {"level":"info","message":"PATCH /devices/608fb794-2b9d-4bde-89c1-3011bc078e9a 200 32ms","method":"PATCH","requestID":"4a7511894a63e8ace787f41f892f82dd","responseTime":32,"status":200,"url":"/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a"} gateway-1 | {"time_local":"21/Sep/2024:15:06:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/608fb794-2b9d-4bde-89c1-3011bc078e9a HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.038","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"4a7511894a63e8ace787f41f892f82dd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Nn0.vX2foaC0S6vD8pM2SGx-Zj9BtDSMIZi7Bh1AoNhitFI","level":"info","message":"auth send jwt","requestID":"e7d95373c3fb9cd366ccb339d3b1ab50"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e7d95373c3fb9cd366ccb339d3b1ab50","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e7d95373c3fb9cd366ccb339d3b1ab50"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1480,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1480,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.90291,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:36Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e7d95373c3fb9cd366ccb339d3b1ab50","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931196,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5Nn0.vX2foaC0S6vD8pM2SGx-Zj9BtDSMIZi7Bh1AoNhitFI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e7d95373c3fb9cd366ccb339d3b1ab50","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e7d95373c3fb9cd366ccb339d3b1ab50"} gateway-1 | {"time_local":"21/Sep/2024:15:06:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/608fb794-2b9d-4bde-89c1-3011bc078e9a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e7d95373c3fb9cd366ccb339d3b1ab50"} device-1 | {"level":"info","message":"POST /devices/608fb794-2b9d-4bde-89c1-3011bc078e9a/websocket 200 15ms","method":"POST","requestID":"e7d95373c3fb9cd366ccb339d3b1ab50","responseTime":15,"status":200,"url":"/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b4032537c0d9b9da083a0abd4e6f9be7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b4032537c0d9b9da083a0abd4e6f9be7","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b4032537c0d9b9da083a0abd4e6f9be7"} device-1 | {"level":"info","message":"OPTIONS /devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7/websocket 200 2ms","method":"OPTIONS","requestID":"b4032537c0d9b9da083a0abd4e6f9be7","responseTime":2,"status":200,"url":"/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5N30.Ro1eEIT5UUxo4fUgDaKZ_J7Z4H0DffGFJOHWbKk4JTs","level":"info","message":"auth send jwt","requestID":"57c562ed62dce32080925cb31c583606"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"57c562ed62dce32080925cb31c583606","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"57c562ed62dce32080925cb31c583606"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1481,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1481,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.139917,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"57c562ed62dce32080925cb31c583606","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931197,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5N30.Ro1eEIT5UUxo4fUgDaKZ_J7Z4H0DffGFJOHWbKk4JTs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"57c562ed62dce32080925cb31c583606","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"57c562ed62dce32080925cb31c583606"} gateway-1 | {"time_local":"21/Sep/2024:15:06:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"57c562ed62dce32080925cb31c583606"} device-1 | {"level":"info","message":"POST /devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7/websocket 200 21ms","method":"POST","requestID":"57c562ed62dce32080925cb31c583606","responseTime":21,"status":200,"url":"/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"510295a7ff9b5c4c8bb4196437364ae0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"510295a7ff9b5c4c8bb4196437364ae0","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"510295a7ff9b5c4c8bb4196437364ae0"} device-1 | {"level":"info","message":"OPTIONS /devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7? 200 1ms","method":"OPTIONS","requestID":"510295a7ff9b5c4c8bb4196437364ae0","responseTime":1,"status":200,"url":"/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso","level":"info","message":"auth send jwt","requestID":"459f5a668f7ee856441eeff764e92415"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"459f5a668f7ee856441eeff764e92415","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"459f5a668f7ee856441eeff764e92415"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1482,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1482,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.277792,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"459f5a668f7ee856441eeff764e92415","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931198,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"459f5a668f7ee856441eeff764e92415","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:35.940749276Z"}]},"request_id":"547db0f3-5f2d-4901-b725-024e35e09ce0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.084875} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"459f5a668f7ee856441eeff764e92415","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1109bfb0-bb70-4542-a99b-546252fbc79a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.0920987} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"459f5a668f7ee856441eeff764e92415","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:35.940749276Z"}]},"request_id":"9b64aa4f-cf01-4a52-aed5-a69b5e397c0d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.1062372} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"459f5a668f7ee856441eeff764e92415","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"459f5a668f7ee856441eeff764e92415"} device-1 | {"level":"info","message":"PATCH /devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7? 200 37ms","method":"PATCH","requestID":"459f5a668f7ee856441eeff764e92415","responseTime":37,"status":200,"url":"/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.044","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"459f5a668f7ee856441eeff764e92415"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso","level":"info","message":"auth send jwt","requestID":"b465b599c39766d0c372049ee53c1767"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b465b599c39766d0c372049ee53c1767","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b465b599c39766d0c372049ee53c1767"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1483,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1483,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.108511,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b465b599c39766d0c372049ee53c1767","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931198,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b465b599c39766d0c372049ee53c1767","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:35.940749276Z"}]},"request_id":"6dfcd5db-674c-4746-94f2-682f9cd32512","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.1361556} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b465b599c39766d0c372049ee53c1767","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b465b599c39766d0c372049ee53c1767"} gateway-1 | {"time_local":"21/Sep/2024:15:06:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b465b599c39766d0c372049ee53c1767"} device-1 | {"level":"info","message":"GET /devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7? 200 18ms","method":"GET","requestID":"b465b599c39766d0c372049ee53c1767","responseTime":18,"status":200,"url":"/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso","level":"info","message":"auth send jwt","requestID":"01cddd5f9334cf46d0037f17b205e875"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"01cddd5f9334cf46d0037f17b205e875","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"01cddd5f9334cf46d0037f17b205e875"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1484,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1484,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.356994,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"01cddd5f9334cf46d0037f17b205e875","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931198,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"01cddd5f9334cf46d0037f17b205e875","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F608fb794-2b9d-4bde-89c1-3011bc078e9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F608fb794-2b9d-4bde-89c1-3011bc078e9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:35.986658824Z"}]},"request_id":"d042d312-ada0-4668-9aad-f4628e75427a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.163078} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"01cddd5f9334cf46d0037f17b205e875","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"01cddd5f9334cf46d0037f17b205e875"} device-1 | {"level":"info","message":"GET /devices/608fb794-2b9d-4bde-89c1-3011bc078e9a? 200 18ms","method":"GET","requestID":"01cddd5f9334cf46d0037f17b205e875","responseTime":18,"status":200,"url":"/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/608fb794-2b9d-4bde-89c1-3011bc078e9a? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"01cddd5f9334cf46d0037f17b205e875"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso","level":"info","message":"auth send jwt","requestID":"8be5f1cf762757230a0b84e15bbdb429"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8be5f1cf762757230a0b84e15bbdb429","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"8be5f1cf762757230a0b84e15bbdb429"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1485,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1485,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.165813,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"8be5f1cf762757230a0b84e15bbdb429","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931198,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8be5f1cf762757230a0b84e15bbdb429","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c1bf5663-016b-42ab-ab4b-fabd82363087"},"level":"info","message":"Attempting to run experiment","requestID":"8be5f1cf762757230a0b84e15bbdb429"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c1bf5663-016b-42ab-ab4b-fabd82363087"},"level":"info","message":"Attempting to book experiment","requestID":"8be5f1cf762757230a0b84e15bbdb429"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c1bf5663-016b-42ab-ab4b-fabd82363087"},"level":"info","message":"Successfully booked experiment","requestID":"8be5f1cf762757230a0b84e15bbdb429"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"19b76170-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"19b7af90-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1486,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1486,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.153111,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1487,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"19b76170-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931198,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"19b76170-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1487,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.316631,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"19b7af90-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931198,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"19b7af90-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:35.940749276Z"}]},"request_id":"3b6935b6-06e1-4a1b-80b3-45d3cf1e47b3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.2279713} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"19b76170-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F608fb794-2b9d-4bde-89c1-3011bc078e9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F608fb794-2b9d-4bde-89c1-3011bc078e9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:35.986658824Z"}]},"request_id":"75526fdd-f871-4a8a-acb9-969f07ddfec7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.2301884} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"19b7af90-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"19b76170-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7? 200 25ms","method":"GET","requestID":"19b76170-782b-11ef-88d4-5fea3f61bb98","responseTime":25,"status":200,"url":"/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"19b7af90-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/608fb794-2b9d-4bde-89c1-3011bc078e9a? 200 24ms","method":"GET","requestID":"19b7af90-782b-11ef-88d4-5fea3f61bb98","responseTime":24,"status":200,"url":"/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c1bf5663-016b-42ab-ab4b-fabd82363087"},"level":"info","message":"Setting up experiment","requestID":"8be5f1cf762757230a0b84e15bbdb429"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c1bf5663-016b-42ab-ab4b-fabd82363087"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"8be5f1cf762757230a0b84e15bbdb429"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c1bf5663-016b-42ab-ab4b-fabd82363087"},"level":"info","message":"Successfully locked booking for experiment","requestID":"8be5f1cf762757230a0b84e15bbdb429"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c1bf5663-016b-42ab-ab4b-fabd82363087"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"8be5f1cf762757230a0b84e15bbdb429"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c1bf5663-016b-42ab-ab4b-fabd82363087"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"8be5f1cf762757230a0b84e15bbdb429"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c1bf5663-016b-42ab-ab4b-fabd82363087"},"level":"info","message":"Attempting to update booking for experiment","requestID":"8be5f1cf762757230a0b84e15bbdb429"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c1bf5663-016b-42ab-ab4b-fabd82363087"},"level":"info","message":"Successfully updated booking for experiment","requestID":"8be5f1cf762757230a0b84e15bbdb429"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c1bf5663-016b-42ab-ab4b-fabd82363087"},"level":"info","message":"Successfully set up experiment","requestID":"8be5f1cf762757230a0b84e15bbdb429"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"19c34850-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"19c39670-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"19c3e490-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c1bf5663-016b-42ab-ab4b-fabd82363087"},"level":"info","message":"Successfully running experiment","requestID":"8be5f1cf762757230a0b84e15bbdb429"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1488,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1488,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.778599,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1489,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"19c34850-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931198,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"19c34850-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1489,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.080306,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"client_addr":"127.0.0.1:43866","level":"info","msg":"Received request.","req_id":1490,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"19c39670-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931198,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"19c39670-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43866","level":"info","msg":"Sent response.","req_id":1490,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.213786,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"068ed4f4-59dd-405b-8ef0-1d5c67416419","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.307542} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"19c3e490-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"19c3e490-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:35.940749276Z"}]},"request_id":"9d19dc6a-7f8d-4c31-a934-9b4ef3c8f696","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.3092282} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"19c34850-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F608fb794-2b9d-4bde-89c1-3011bc078e9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F608fb794-2b9d-4bde-89c1-3011bc078e9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:35.986658824Z"}]},"request_id":"d9a58201-1542-46a4-95ca-9c37645bb24e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.3123534} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"19c39670-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"19c3e490-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7/signaling 200 17ms","method":"POST","requestID":"19c3e490-782b-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"19c718e0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"19c34850-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1491,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} device-1 | {"level":"info","message":"GET /devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7? 200 29ms","method":"GET","requestID":"19c34850-782b-11ef-88d4-5fea3f61bb98","responseTime":29,"status":200,"url":"/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"19c39670-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/608fb794-2b9d-4bde-89c1-3011bc078e9a? 200 28ms","method":"GET","requestID":"19c39670-782b-11ef-88d4-5fea3f61bb98","responseTime":28,"status":200,"url":"/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F608fb794-2b9d-4bde-89c1-3011bc078e9a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bdf26bf6-0807-4359-b835-53bdcc55a941","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.3241847} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc1bf5663-016b-42ab-ab4b-fabd82363087#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc1bf5663-016b-42ab-ab4b-fabd82363087","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"b52d4a1f-775b-469f-8d56-08323f74c56f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.3245368} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"90c3827e-65d1-4887-b617-07a917054778","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.3248096} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1491,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.086948,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"19c718e0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"19c82a50-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"19c718e0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"8be5f1cf762757230a0b84e15bbdb429","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"19c718e0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1492,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} device-1 | {"level":"info","message":"POST /devices/608fb794-2b9d-4bde-89c1-3011bc078e9a/signaling 200 11ms","method":"POST","requestID":"19c718e0-782b-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f59f281e-e1ea-47e9-8965-e7ac3524421d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.3315363} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1492,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.721309,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"19c82a50-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/c1bf5663-016b-42ab-ab4b-fabd82363087","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"8be5f1cf762757230a0b84e15bbdb429"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"19c82a50-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:06:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.163","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8be5f1cf762757230a0b84e15bbdb429"} experiment-1 | {"level":"info","message":"POST /experiments? 201 158ms","method":"POST","requestID":"8be5f1cf762757230a0b84e15bbdb429","responseTime":158,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"19c82a50-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7/signaling 200 11ms","method":"POST","requestID":"19c82a50-782b-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso","level":"info","message":"auth send jwt","requestID":"0e6a8c051eca1b3a469decf6d560caaa"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0e6a8c051eca1b3a469decf6d560caaa","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"19ca4d30-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0e6a8c051eca1b3a469decf6d560caaa"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1493,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1494,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1494,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.898342,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0e6a8c051eca1b3a469decf6d560caaa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931198,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0e6a8c051eca1b3a469decf6d560caaa","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F608fb794-2b9d-4bde-89c1-3011bc078e9a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f0bd0c89-cc11-4e66-a1b0-cf1ea6dbd20d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.3449209} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1493,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.259924,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"19ca4d30-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"19ca4d30-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:35.940749276Z"}]},"request_id":"8a236777-b48d-4a6f-8863-6f92b7addb97","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.3498855} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0e6a8c051eca1b3a469decf6d560caaa","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"19ca4d30-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/608fb794-2b9d-4bde-89c1-3011bc078e9a/signaling 200 14ms","method":"POST","requestID":"19ca4d30-782b-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c1bf5663-016b-42ab-ab4b-fabd82363087"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"8be5f1cf762757230a0b84e15bbdb429"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0e6a8c051eca1b3a469decf6d560caaa"} gateway-1 | {"time_local":"21/Sep/2024:15:06:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0e6a8c051eca1b3a469decf6d560caaa"} device-1 | {"level":"info","message":"GET /devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7? 200 14ms","method":"GET","requestID":"0e6a8c051eca1b3a469decf6d560caaa","responseTime":14,"status":200,"url":"/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"19ccbe30-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"19cce540-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1495,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso","level":"info","message":"auth send jwt","requestID":"29b79f0aa20cb205c99da5b1391afa9b"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1495,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.841257,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1496,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"29b79f0aa20cb205c99da5b1391afa9b","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"19ccbe30-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931198,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"29b79f0aa20cb205c99da5b1391afa9b"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"19ccbe30-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1496,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.87407,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"19cce540-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931198,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"19cce540-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1497,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1497,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.911013,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"29b79f0aa20cb205c99da5b1391afa9b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931198,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"29b79f0aa20cb205c99da5b1391afa9b","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:35.940749276Z"}]},"request_id":"92253e90-c788-4d9d-a084-911f58a11221","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.3662794} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F608fb794-2b9d-4bde-89c1-3011bc078e9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F608fb794-2b9d-4bde-89c1-3011bc078e9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:35.986658824Z"}]},"request_id":"5f47c856-c280-4b76-b93c-c48dd71c9d3e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.3671277} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"19ccbe30-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"19cce540-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F608fb794-2b9d-4bde-89c1-3011bc078e9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F608fb794-2b9d-4bde-89c1-3011bc078e9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:35.986658824Z"}]},"request_id":"32c0fca5-1dbb-41e7-8830-0f7227df48d6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.3708189} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"29b79f0aa20cb205c99da5b1391afa9b","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"19ccbe30-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7? 200 21ms","method":"GET","requestID":"19ccbe30-782b-11ef-88d4-5fea3f61bb98","responseTime":21,"status":200,"url":"/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"19cce540-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/608fb794-2b9d-4bde-89c1-3011bc078e9a? 200 21ms","method":"GET","requestID":"19cce540-782b-11ef-88d4-5fea3f61bb98","responseTime":21,"status":200,"url":"/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"29b79f0aa20cb205c99da5b1391afa9b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c1bf5663-016b-42ab-ab4b-fabd82363087"},"level":"info","message":"Building connection plan","requestID":"8be5f1cf762757230a0b84e15bbdb429"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"43a8b8ea-6d96-454b-96b4-be8682a39078"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"8e830bea-dbb0-4a85-bac6-57fe8e7aab90"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"72e5806c-f54a-4757-b767-a0568a054ee2"}]},"level":"info","message":"Built pairwise service configurations","requestID":"8be5f1cf762757230a0b84e15bbdb429"} gateway-1 | {"time_local":"21/Sep/2024:15:06:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/608fb794-2b9d-4bde-89c1-3011bc078e9a? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"29b79f0aa20cb205c99da5b1391afa9b"} device-1 | {"level":"info","message":"GET /devices/608fb794-2b9d-4bde-89c1-3011bc078e9a? 200 19ms","method":"GET","requestID":"29b79f0aa20cb205c99da5b1391afa9b","responseTime":19,"status":200,"url":"/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a?"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"19d067b0-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"19d067b0-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"19d067b0-782b-11ef-938d-0b888d58857d","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/84b504d6-aef1-4720-a333-42c10dd0cd69?id=411aa2fc-eb75-4b3c-be83-859197120f77","ws://localhost/rooms/84b504d6-aef1-4720-a333-42c10dd0cd69?id=1f5f0fdc-df37-47be-a5b4-a5e2fa4a42b8"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"8be5f1cf762757230a0b84e15bbdb429"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"19d0dce0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1498,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1498,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.839554,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"19d0dce0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931198,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"19d0dce0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"dd961af4-e997-42c5-9c3b-c06102e59d9a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.3940067} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f78ba2ea-6c2d-4cf1-b938-888a27fe4de1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.394238} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"19d0dce0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"19d0dce0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"19d0dce0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/d2082fb3-f575-48fe-b59f-f251f6ceb63e'","requestID":"19d0dce0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/d2082fb3-f575-48fe-b59f-f251f6ceb63e'","requestID":"19d0dce0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"19d0dce0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"19d0dce0-782b-11ef-88d4-5fea3f61bb98","responseTime":25,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"19d0dce0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d2082fb3-f575-48fe-b59f-f251f6ceb63e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d2082fb3-f575-48fe-b59f-f251f6ceb63e","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"19d60d00-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"411aa2fc-eb75-4b3c-be83-859197120f77\" in room \"http://localhost/rooms/84b504d6-aef1-4720-a333-42c10dd0cd69\"","requestID":"19d60d00-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"19d60d00-782b-11ef-938d-0b888d58857d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4bc000d8d2d2c5e582474f109eab24f0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4bc000d8d2d2c5e582474f109eab24f0","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"19d65b20-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1f5f0fdc-df37-47be-a5b4-a5e2fa4a42b8\" in room \"http://localhost/rooms/84b504d6-aef1-4720-a333-42c10dd0cd69\"","requestID":"19d65b20-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"19d65b20-782b-11ef-938d-0b888d58857d"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/d2082fb3-f575-48fe-b59f-f251f6ceb63e"}}},"level":"info","message":"received a callback","requestID":"4bc000d8d2d2c5e582474f109eab24f0"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"411aa2fc-eb75-4b3c-be83-859197120f77\" in room \"http://localhost/rooms/84b504d6-aef1-4720-a333-42c10dd0cd69\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"411aa2fc-eb75-4b3c-be83-859197120f77\" in room \"http://localhost/rooms/84b504d6-aef1-4720-a333-42c10dd0cd69\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"411aa2fc-eb75-4b3c-be83-859197120f77\" in room \"http://localhost/rooms/84b504d6-aef1-4720-a333-42c10dd0cd69\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"411aa2fc-eb75-4b3c-be83-859197120f77\" in room \"http://localhost/rooms/84b504d6-aef1-4720-a333-42c10dd0cd69\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"411aa2fc-eb75-4b3c-be83-859197120f77\" in room \"http://localhost/rooms/84b504d6-aef1-4720-a333-42c10dd0cd69\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"411aa2fc-eb75-4b3c-be83-859197120f77\" in room \"http://localhost/rooms/84b504d6-aef1-4720-a333-42c10dd0cd69\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"411aa2fc-eb75-4b3c-be83-859197120f77\" in room \"http://localhost/rooms/84b504d6-aef1-4720-a333-42c10dd0cd69\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"411aa2fc-eb75-4b3c-be83-859197120f77\" in room \"http://localhost/rooms/84b504d6-aef1-4720-a333-42c10dd0cd69\""} device-1 | {"data":{"peerconnection":"d2082fb3-f575-48fe-b59f-f251f6ceb63e","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 12ms","method":"POST","requestID":"4bc000d8d2d2c5e582474f109eab24f0","responseTime":12,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch","requestID":"4bc000d8d2d2c5e582474f109eab24f0"} device-1 | {"data":{"peerconnection":"d2082fb3-f575-48fe-b59f-f251f6ceb63e","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c1bf5663-016b-42ab-ab4b-fabd82363087"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"8be5f1cf762757230a0b84e15bbdb429"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"19daef00-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1499,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"062c9cc2-ee0c-4f87-8c30-733b1da3540e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.4519825} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1499,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.312233,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"19daef00-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"19daef00-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d2082fb3-f575-48fe-b59f-f251f6ceb63e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d2082fb3-f575-48fe-b59f-f251f6ceb63e","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7d73e9c5c32846562f06265a5588047d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7d73e9c5c32846562f06265a5588047d","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"19daef00-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7/signaling 200 10ms","method":"POST","requestID":"19daef00-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7/signaling"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/d2082fb3-f575-48fe-b59f-f251f6ceb63e"}}},"level":"info","message":"received a callback","requestID":"7d73e9c5c32846562f06265a5588047d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"19dcead0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1500,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"19dd38f0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F608fb794-2b9d-4bde-89c1-3011bc078e9a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4c5a8d58-1d06-42a7-8c34-0b3261155121","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.4650202} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1501,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1500,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.356077,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"19dcead0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"19dcead0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd2082fb3-f575-48fe-b59f-f251f6ceb63e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3571f1e5-77bc-48d5-85eb-3dcaab1b62b7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.4671247} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1501,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.058204,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d2082fb3-f575-48fe-b59f-f251f6ceb63e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"19dd38f0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/d2082fb3-f575-48fe-b59f-f251f6ceb63e","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"19dd38f0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"19dcead0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/608fb794-2b9d-4bde-89c1-3011bc078e9a/signaling 200 8ms","method":"POST","requestID":"19dcead0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a/signaling"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"19dd38f0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/d2082fb3-f575-48fe-b59f-f251f6ceb63e 200 7ms","method":"GET","requestID":"19dd38f0-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/peerconnections/d2082fb3-f575-48fe-b59f-f251f6ceb63e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 24ms","method":"POST","requestID":"7d73e9c5c32846562f06265a5588047d","responseTime":24,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch","requestID":"7d73e9c5c32846562f06265a5588047d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"19e04630-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1502,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F608fb794-2b9d-4bde-89c1-3011bc078e9a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0ce6dc8b-98d4-4bff-be65-4af2d467d335","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.488001} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1502,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.259298,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"19e04630-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"19e04630-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"19e04630-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/608fb794-2b9d-4bde-89c1-3011bc078e9a/signaling 200 9ms","method":"POST","requestID":"19e04630-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"19e1ccd0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1503,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5db3045f-bc98-481e-b24b-8457607c5c8d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.4978464} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1503,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.058067,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"19e1ccd0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"19e1ccd0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"19e1ccd0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7/signaling 200 8ms","method":"POST","requestID":"19e1ccd0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso","level":"info","message":"auth send jwt","requestID":"e1caf8f0e060dbdc3a0b97a4d68b4eb0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e1caf8f0e060dbdc3a0b97a4d68b4eb0","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/c1bf5663-016b-42ab-ab4b-fabd82363087","requestID":"e1caf8f0e060dbdc3a0b97a4d68b4eb0"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1504,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1504,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.203569,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c1bf5663-016b-42ab-ab4b-fabd82363087","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e1caf8f0e060dbdc3a0b97a4d68b4eb0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/c1bf5663-016b-42ab-ab4b-fabd82363087","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931198,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e1caf8f0e060dbdc3a0b97a4d68b4eb0","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/c1bf5663-016b-42ab-ab4b-fabd82363087","requestID":"e1caf8f0e060dbdc3a0b97a4d68b4eb0"} gateway-1 | {"time_local":"21/Sep/2024:15:06:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/c1bf5663-016b-42ab-ab4b-fabd82363087 HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e1caf8f0e060dbdc3a0b97a4d68b4eb0"} experiment-1 | {"level":"info","message":"GET /experiments/c1bf5663-016b-42ab-ab4b-fabd82363087 200 14ms","method":"GET","requestID":"e1caf8f0e060dbdc3a0b97a4d68b4eb0","responseTime":14,"status":200,"url":"/experiments/c1bf5663-016b-42ab-ab4b-fabd82363087"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso","level":"info","message":"auth send jwt","requestID":"d32e4fc9987ea795f77edd38484f73be"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d32e4fc9987ea795f77edd38484f73be","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/c1bf5663-016b-42ab-ab4b-fabd82363087","requestID":"d32e4fc9987ea795f77edd38484f73be"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1505,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1505,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.193113,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c1bf5663-016b-42ab-ab4b-fabd82363087","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d32e4fc9987ea795f77edd38484f73be","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/c1bf5663-016b-42ab-ab4b-fabd82363087","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931198,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d32e4fc9987ea795f77edd38484f73be","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c1bf5663-016b-42ab-ab4b-fabd82363087"},"level":"info","message":"Attempting to finish experiment","requestID":"d32e4fc9987ea795f77edd38484f73be"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"19ecf060-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1506,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1506,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.225094,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d2082fb3-f575-48fe-b59f-f251f6ceb63e","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"19ecf060-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/d2082fb3-f575-48fe-b59f-f251f6ceb63e","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931198,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"19ecf060-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:06:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/84b504d6-aef1-4720-a333-42c10dd0cd69?id=411aa2fc-eb75-4b3c-be83-859197120f77 HTTP/1.1","status": "101","body_bytes_sent":"872","request_time":"0.167","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"8a35c0b71ee6ebbf035f6d7133cd2b2b"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"411aa2fc-eb75-4b3c-be83-859197120f77\" in room \"http://localhost/rooms/84b504d6-aef1-4720-a333-42c10dd0cd69\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"411aa2fc-eb75-4b3c-be83-859197120f77\" from room \"http://localhost/rooms/84b504d6-aef1-4720-a333-42c10dd0cd69\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d2082fb3-f575-48fe-b59f-f251f6ceb63e' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/d2082fb3-f575-48fe-b59f-f251f6ceb63e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d2082fb3-f575-48fe-b59f-f251f6ceb63e","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"21/Sep/2024:15:06:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/84b504d6-aef1-4720-a333-42c10dd0cd69?id=1f5f0fdc-df37-47be-a5b4-a5e2fa4a42b8 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.166","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6a05dfb2e0cd6950aaf8f8394fd061e0"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"1f5f0fdc-df37-47be-a5b4-a5e2fa4a42b8\" in room \"http://localhost/rooms/84b504d6-aef1-4720-a333-42c10dd0cd69\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"1f5f0fdc-df37-47be-a5b4-a5e2fa4a42b8\" from room \"http://localhost/rooms/84b504d6-aef1-4720-a333-42c10dd0cd69\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/d2082fb3-f575-48fe-b59f-f251f6ceb63e","device":"d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6ce3e0f404be28617bcb248715f5b383","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6ce3e0f404be28617bcb248715f5b383","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd2082fb3-f575-48fe-b59f-f251f6ceb63e': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd2082fb3-f575-48fe-b59f-f251f6ceb63e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"a729a571-28b9-4f1e-aac1-6f82b2c5f207","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.5872352} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d150f7b6-f5de-4a03-af36-56fb75db4a9a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.587487} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"74e5188bda7a8f9d9fd5ba3c1810dde3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/d2082fb3-f575-48fe-b59f-f251f6ceb63e"}}},"level":"info","message":"received a callback","requestID":"6ce3e0f404be28617bcb248715f5b383"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"74e5188bda7a8f9d9fd5ba3c1810dde3","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"19ecf060-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/d2082fb3-f575-48fe-b59f-f251f6ceb63e"}}},"level":"info","message":"received a callback","requestID":"74e5188bda7a8f9d9fd5ba3c1810dde3"} device-1 | {"data":{"peerconnection":"d2082fb3-f575-48fe-b59f-f251f6ceb63e","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"19ecf060-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/d2082fb3-f575-48fe-b59f-f251f6ceb63e 204 44ms","method":"DELETE","requestID":"19ecf060-782b-11ef-88d4-5fea3f61bb98","responseTime":44,"status":204,"url":"/peerconnections/d2082fb3-f575-48fe-b59f-f251f6ceb63e"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c1bf5663-016b-42ab-ab4b-fabd82363087"},"level":"info","message":"Successfully finished experiment","requestID":"d32e4fc9987ea795f77edd38484f73be"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"19f6db70-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1507,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F608fb794-2b9d-4bde-89c1-3011bc078e9a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4cb2a576-bc6f-4419-9d55-717ec571a38e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.6383605} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1507,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.246764,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"19f6db70-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"19f6db70-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"19f6db70-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc1bf5663-016b-42ab-ab4b-fabd82363087': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc1bf5663-016b-42ab-ab4b-fabd82363087","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"30fe2ec9-c0c7-4dc6-9861-111252eaad24","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.6445513} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f597861f-5d51-4627-8b37-1359270425a7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.6447985} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"d32e4fc9987ea795f77edd38484f73be","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"POST /devices/608fb794-2b9d-4bde-89c1-3011bc078e9a/signaling 200 16ms","method":"POST","requestID":"19f6db70-782b-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"19f97380-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1508,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dd207457-da87-4480-ac28-f933e023d80e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.654405} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1508,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.700862,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"19f97380-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"19f97380-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"19f97380-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7/signaling 200 12ms","method":"POST","requestID":"19f97380-782b-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/c1bf5663-016b-42ab-ab4b-fabd82363087","requestID":"d32e4fc9987ea795f77edd38484f73be"} gateway-1 | {"time_local":"21/Sep/2024:15:06:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/c1bf5663-016b-42ab-ab4b-fabd82363087 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.159","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d32e4fc9987ea795f77edd38484f73be"} experiment-1 | {"level":"info","message":"DELETE /experiments/c1bf5663-016b-42ab-ab4b-fabd82363087 204 156ms","method":"DELETE","requestID":"d32e4fc9987ea795f77edd38484f73be","responseTime":156,"status":204,"url":"/experiments/c1bf5663-016b-42ab-ab4b-fabd82363087"} gateway-1 | {"time_local":"21/Sep/2024:15:06:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1744","request_time":"2.170","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"69f5b96a1976d1e32bc62d0e30583b37"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"6ce3e0f404be28617bcb248715f5b383","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.125","http_referrer":"","http_user_agent":"node-fetch","requestID":"6ce3e0f404be28617bcb248715f5b383"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"74e5188bda7a8f9d9fd5ba3c1810dde3","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"74e5188bda7a8f9d9fd5ba3c1810dde3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso","level":"info","message":"auth send jwt","requestID":"8deb623b35126dc803c3ef206868042d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8deb623b35126dc803c3ef206868042d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8deb623b35126dc803c3ef206868042d"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1509,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} gateway-1 | {"time_local":"21/Sep/2024:15:06:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2069","request_time":"0.692","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ce9ec365585dee54444ae86ab4815458"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1509,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":6.220724,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"8deb623b35126dc803c3ef206868042d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931198,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"8deb623b35126dc803c3ef206868042d","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/608fb794-2b9d-4bde-89c1-3011bc078e9a' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52b2ed77-44bf-4e58-b482-96b69e186170","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"db70708e-8a5d-4661-8bd5-c8e86e9d1b71","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.7421088} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8deb623b35126dc803c3ef206868042d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/d9c1d05b-a3e6-4cc7-aaaf-85af7a7645c7' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6d0a6000-2e73-4dc5-887c-33b9a8405655","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.7482114} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"8deb623b35126dc803c3ef206868042d","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52b2ed77-44bf-4e58-b482-96b69e186170","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"c7bff424-073a-4dc4-adf1-8b8243663869","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.7577844} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"83b465c5-7a55-4998-8a36-ec47a4621d5c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.758177} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"8deb623b35126dc803c3ef206868042d","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52b2ed77-44bf-4e58-b482-96b69e186170","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52b2ed77-44bf-4e58-b482-96b69e186170","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:38.757746570Z"}]},"request_id":"f05afcd3-723a-4a88-a387-f1436a7c2e8d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.763172} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8deb623b35126dc803c3ef206868042d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8deb623b35126dc803c3ef206868042d"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"8deb623b35126dc803c3ef206868042d","responseTime":51,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8deb623b35126dc803c3ef206868042d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso","level":"info","message":"auth send jwt","requestID":"31bec260f979ea7f8a3012c9e6cc5e25"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"31bec260f979ea7f8a3012c9e6cc5e25","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"31bec260f979ea7f8a3012c9e6cc5e25"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1510,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1510,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.941434,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"31bec260f979ea7f8a3012c9e6cc5e25","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931198,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OH0.sdTOphrWEkiOWi87qe3FIC06f22HhCetgaW_hHUVvso"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"31bec260f979ea7f8a3012c9e6cc5e25","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ecbc203-fc3b-425b-b117-7b9565280f29","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"08f5241c-7e90-46c2-9e0b-2ebbcc8bf9cd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.7939873} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"31bec260f979ea7f8a3012c9e6cc5e25","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9651b1e5-9187-4aa4-acb4-cd90d4053096","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.798591} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"31bec260f979ea7f8a3012c9e6cc5e25","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ecbc203-fc3b-425b-b117-7b9565280f29","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"1be2fc0a-3c44-4376-ad86-e20c244932c2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.8091445} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"da387c74-149c-4142-8b5c-f5a2fe50b988","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.8092647} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"31bec260f979ea7f8a3012c9e6cc5e25","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ecbc203-fc3b-425b-b117-7b9565280f29","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ecbc203-fc3b-425b-b117-7b9565280f29","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:38.809111361Z"}]},"request_id":"aaaac91d-b7c6-414b-8505-8c28e032ab53","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931198.8141696} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"31bec260f979ea7f8a3012c9e6cc5e25","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"31bec260f979ea7f8a3012c9e6cc5e25"} gateway-1 | {"time_local":"21/Sep/2024:15:06:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"31bec260f979ea7f8a3012c9e6cc5e25"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"31bec260f979ea7f8a3012c9e6cc5e25","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OX0.nbHBTAS5XO_kiQLWmRcbJ8SGa68_qtLDSt-_uFDXRJc","level":"info","message":"auth send jwt","requestID":"bd30f5c05f34c71811fcba6310995079"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bd30f5c05f34c71811fcba6310995079","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"bd30f5c05f34c71811fcba6310995079"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1511,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:39Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1511,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.8303,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:39Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bd30f5c05f34c71811fcba6310995079","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931199,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OX0.nbHBTAS5XO_kiQLWmRcbJ8SGa68_qtLDSt-_uFDXRJc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bd30f5c05f34c71811fcba6310995079","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52b2ed77-44bf-4e58-b482-96b69e186170","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52b2ed77-44bf-4e58-b482-96b69e186170","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:38.757746570Z"}]},"request_id":"31b1cbe2-8269-4560-8c5d-3a5cb650d683","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931199.2991855} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bd30f5c05f34c71811fcba6310995079","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ce0db796-add8-4de2-b590-7ae54d04805e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931199.3054276} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"bd30f5c05f34c71811fcba6310995079","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52b2ed77-44bf-4e58-b482-96b69e186170","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52b2ed77-44bf-4e58-b482-96b69e186170","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:38.757746570Z"}]},"request_id":"670e3b9a-6d0f-4ba6-85bb-001d12041173","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931199.317912} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bd30f5c05f34c71811fcba6310995079","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"bd30f5c05f34c71811fcba6310995079"} device-1 | {"level":"info","message":"PATCH /devices/52b2ed77-44bf-4e58-b482-96b69e186170 200 34ms","method":"PATCH","requestID":"bd30f5c05f34c71811fcba6310995079","responseTime":34,"status":200,"url":"/devices/52b2ed77-44bf-4e58-b482-96b69e186170"} gateway-1 | {"time_local":"21/Sep/2024:15:06:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/52b2ed77-44bf-4e58-b482-96b69e186170 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"bd30f5c05f34c71811fcba6310995079"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OX0.nbHBTAS5XO_kiQLWmRcbJ8SGa68_qtLDSt-_uFDXRJc","level":"info","message":"auth send jwt","requestID":"5ed999c9def1826dad3ea85d05707fd1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5ed999c9def1826dad3ea85d05707fd1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5ed999c9def1826dad3ea85d05707fd1"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1512,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:39Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1512,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.475933,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:39Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"5ed999c9def1826dad3ea85d05707fd1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931199,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTE5OX0.nbHBTAS5XO_kiQLWmRcbJ8SGa68_qtLDSt-_uFDXRJc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5ed999c9def1826dad3ea85d05707fd1","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5ed999c9def1826dad3ea85d05707fd1"} device-1 | {"level":"info","message":"POST /devices/52b2ed77-44bf-4e58-b482-96b69e186170/websocket 200 20ms","method":"POST","requestID":"5ed999c9def1826dad3ea85d05707fd1","responseTime":20,"status":200,"url":"/devices/52b2ed77-44bf-4e58-b482-96b69e186170/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:06:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/52b2ed77-44bf-4e58-b482-96b69e186170/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"5ed999c9def1826dad3ea85d05707fd1"} device-1 | {"level":"info","message":"device 'http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1a509c954cb9b504582870431b4aa1d2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1a509c954cb9b504582870431b4aa1d2","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9ecbc203-fc3b-425b-b117-7b9565280f29/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1a509c954cb9b504582870431b4aa1d2"} device-1 | {"level":"info","message":"OPTIONS /devices/9ecbc203-fc3b-425b-b117-7b9565280f29/websocket 200 1ms","method":"OPTIONS","requestID":"1a509c954cb9b504582870431b4aa1d2","responseTime":1,"status":200,"url":"/devices/9ecbc203-fc3b-425b-b117-7b9565280f29/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMH0.IJV_3tQFYKO2vJ5C5kKxSgnfQO1W5QyWa2sMRHS_7oI","level":"info","message":"auth send jwt","requestID":"42fd88326ab3c4bd38b7b5038762e253"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"42fd88326ab3c4bd38b7b5038762e253","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"42fd88326ab3c4bd38b7b5038762e253"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1513,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:40Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1513,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.112468,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"42fd88326ab3c4bd38b7b5038762e253","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931200,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMH0.IJV_3tQFYKO2vJ5C5kKxSgnfQO1W5QyWa2sMRHS_7oI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"42fd88326ab3c4bd38b7b5038762e253","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"42fd88326ab3c4bd38b7b5038762e253"} gateway-1 | {"time_local":"21/Sep/2024:15:06:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9ecbc203-fc3b-425b-b117-7b9565280f29/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"42fd88326ab3c4bd38b7b5038762e253"} device-1 | {"level":"info","message":"POST /devices/9ecbc203-fc3b-425b-b117-7b9565280f29/websocket 200 20ms","method":"POST","requestID":"42fd88326ab3c4bd38b7b5038762e253","responseTime":20,"status":200,"url":"/devices/9ecbc203-fc3b-425b-b117-7b9565280f29/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"234243915419822a922e50da6d3050ac","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"234243915419822a922e50da6d3050ac","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9ecbc203-fc3b-425b-b117-7b9565280f29? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"234243915419822a922e50da6d3050ac"} device-1 | {"level":"info","message":"OPTIONS /devices/9ecbc203-fc3b-425b-b117-7b9565280f29? 200 1ms","method":"OPTIONS","requestID":"234243915419822a922e50da6d3050ac","responseTime":1,"status":200,"url":"/devices/9ecbc203-fc3b-425b-b117-7b9565280f29?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMH0.IJV_3tQFYKO2vJ5C5kKxSgnfQO1W5QyWa2sMRHS_7oI","level":"info","message":"auth send jwt","requestID":"a284d1b3a70e15b91e09879ee3dfa546"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a284d1b3a70e15b91e09879ee3dfa546","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a284d1b3a70e15b91e09879ee3dfa546"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1514,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:40Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1514,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.197293,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a284d1b3a70e15b91e09879ee3dfa546","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931200,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMH0.IJV_3tQFYKO2vJ5C5kKxSgnfQO1W5QyWa2sMRHS_7oI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a284d1b3a70e15b91e09879ee3dfa546","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ecbc203-fc3b-425b-b117-7b9565280f29","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ecbc203-fc3b-425b-b117-7b9565280f29","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:38.809111361Z"}]},"request_id":"6bf8dd30-e655-4b5e-a0cf-975829770eeb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931200.923279} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a284d1b3a70e15b91e09879ee3dfa546","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"85f48a66-7264-438d-ac6f-66bf2f511392","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931200.9298966} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a284d1b3a70e15b91e09879ee3dfa546","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ecbc203-fc3b-425b-b117-7b9565280f29","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ecbc203-fc3b-425b-b117-7b9565280f29","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:38.809111361Z"}]},"request_id":"c8beb3d6-9d1e-471c-a753-b7415ab3578a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931200.9404778} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a284d1b3a70e15b91e09879ee3dfa546","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a284d1b3a70e15b91e09879ee3dfa546"} gateway-1 | {"time_local":"21/Sep/2024:15:06:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9ecbc203-fc3b-425b-b117-7b9565280f29? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.039","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a284d1b3a70e15b91e09879ee3dfa546"} device-1 | {"level":"info","message":"PATCH /devices/9ecbc203-fc3b-425b-b117-7b9565280f29? 200 33ms","method":"PATCH","requestID":"a284d1b3a70e15b91e09879ee3dfa546","responseTime":33,"status":200,"url":"/devices/9ecbc203-fc3b-425b-b117-7b9565280f29?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMH0.IJV_3tQFYKO2vJ5C5kKxSgnfQO1W5QyWa2sMRHS_7oI","level":"info","message":"auth send jwt","requestID":"e3bc99a61a45763c91082644dd3ab7ee"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e3bc99a61a45763c91082644dd3ab7ee","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e3bc99a61a45763c91082644dd3ab7ee"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1515,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:40Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1515,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.271309,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e3bc99a61a45763c91082644dd3ab7ee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931200,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMH0.IJV_3tQFYKO2vJ5C5kKxSgnfQO1W5QyWa2sMRHS_7oI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e3bc99a61a45763c91082644dd3ab7ee","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52b2ed77-44bf-4e58-b482-96b69e186170","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52b2ed77-44bf-4e58-b482-96b69e186170","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:38.757746570Z"}]},"request_id":"ad335795-f598-4ba9-9cf2-9dc21c9e14d1","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931200.9674683} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e3bc99a61a45763c91082644dd3ab7ee","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e3bc99a61a45763c91082644dd3ab7ee"} gateway-1 | {"time_local":"21/Sep/2024:15:06:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/52b2ed77-44bf-4e58-b482-96b69e186170? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e3bc99a61a45763c91082644dd3ab7ee"} device-1 | {"level":"info","message":"GET /devices/52b2ed77-44bf-4e58-b482-96b69e186170? 200 16ms","method":"GET","requestID":"e3bc99a61a45763c91082644dd3ab7ee","responseTime":16,"status":200,"url":"/devices/52b2ed77-44bf-4e58-b482-96b69e186170?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMH0.IJV_3tQFYKO2vJ5C5kKxSgnfQO1W5QyWa2sMRHS_7oI","level":"info","message":"auth send jwt","requestID":"69f16e4f1263b2d2b9b2e18ea6eb90d9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"69f16e4f1263b2d2b9b2e18ea6eb90d9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"69f16e4f1263b2d2b9b2e18ea6eb90d9"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1516,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:40Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1516,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.656773,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"69f16e4f1263b2d2b9b2e18ea6eb90d9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931200,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMH0.IJV_3tQFYKO2vJ5C5kKxSgnfQO1W5QyWa2sMRHS_7oI"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"69f16e4f1263b2d2b9b2e18ea6eb90d9","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ecbc203-fc3b-425b-b117-7b9565280f29","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ecbc203-fc3b-425b-b117-7b9565280f29","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:38.809111361Z"}]},"request_id":"56af9b9b-30b1-4f43-baca-0e6290873130","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931200.9948175} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"69f16e4f1263b2d2b9b2e18ea6eb90d9","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"69f16e4f1263b2d2b9b2e18ea6eb90d9"} gateway-1 | {"time_local":"21/Sep/2024:15:06:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9ecbc203-fc3b-425b-b117-7b9565280f29? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"69f16e4f1263b2d2b9b2e18ea6eb90d9"} device-1 | {"level":"info","message":"GET /devices/9ecbc203-fc3b-425b-b117-7b9565280f29? 200 19ms","method":"GET","requestID":"69f16e4f1263b2d2b9b2e18ea6eb90d9","responseTime":19,"status":200,"url":"/devices/9ecbc203-fc3b-425b-b117-7b9565280f29?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMX0.qgRdY0DBdLZpHPrYcA0uqJyL7-PvhX5VcbsVR1Z9VQE","level":"info","message":"auth send jwt","requestID":"b1e9dbbc46f13b8099df499944b835fd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b1e9dbbc46f13b8099df499944b835fd","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"b1e9dbbc46f13b8099df499944b835fd"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1517,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1517,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.337796,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b1e9dbbc46f13b8099df499944b835fd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931201,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMX0.qgRdY0DBdLZpHPrYcA0uqJyL7-PvhX5VcbsVR1Z9VQE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b1e9dbbc46f13b8099df499944b835fd","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f"},"level":"info","message":"Attempting to run experiment","requestID":"b1e9dbbc46f13b8099df499944b835fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f"},"level":"info","message":"Attempting to book experiment","requestID":"b1e9dbbc46f13b8099df499944b835fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f"},"level":"info","message":"Successfully booked experiment","requestID":"b1e9dbbc46f13b8099df499944b835fd"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1b67d090-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1b67f7a0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1518,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1518,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.941109,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1519,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1b67d090-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931201,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMX0.qgRdY0DBdLZpHPrYcA0uqJyL7-PvhX5VcbsVR1Z9VQE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1b67d090-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1519,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.807402,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1b67f7a0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931201,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMX0.qgRdY0DBdLZpHPrYcA0uqJyL7-PvhX5VcbsVR1Z9VQE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1b67f7a0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52b2ed77-44bf-4e58-b482-96b69e186170","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52b2ed77-44bf-4e58-b482-96b69e186170","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:38.757746570Z"}]},"request_id":"358db813-0a2d-4735-89b0-7a830ec55803","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.058402} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1b67d090-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ecbc203-fc3b-425b-b117-7b9565280f29","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ecbc203-fc3b-425b-b117-7b9565280f29","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:38.809111361Z"}]},"request_id":"1fd9cc53-c08d-4f37-94bb-4e2594f7bd75","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.0598783} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1b67f7a0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1b67d090-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/52b2ed77-44bf-4e58-b482-96b69e186170? 200 17ms","method":"GET","requestID":"1b67d090-782b-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/52b2ed77-44bf-4e58-b482-96b69e186170?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1b67f7a0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/9ecbc203-fc3b-425b-b117-7b9565280f29? 200 17ms","method":"GET","requestID":"1b67f7a0-782b-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/9ecbc203-fc3b-425b-b117-7b9565280f29?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f"},"level":"info","message":"Setting up experiment","requestID":"b1e9dbbc46f13b8099df499944b835fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"b1e9dbbc46f13b8099df499944b835fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f"},"level":"info","message":"Successfully locked booking for experiment","requestID":"b1e9dbbc46f13b8099df499944b835fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"b1e9dbbc46f13b8099df499944b835fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"b1e9dbbc46f13b8099df499944b835fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f"},"level":"info","message":"Attempting to update booking for experiment","requestID":"b1e9dbbc46f13b8099df499944b835fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f"},"level":"info","message":"Successfully updated booking for experiment","requestID":"b1e9dbbc46f13b8099df499944b835fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f"},"level":"info","message":"Successfully set up experiment","requestID":"b1e9dbbc46f13b8099df499944b835fd"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1b7257e0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1b72a600-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1b72f420-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f"},"level":"info","message":"Successfully running experiment","requestID":"b1e9dbbc46f13b8099df499944b835fd"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1520,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1520,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.771979,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1521,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1b7257e0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931201,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMX0.qgRdY0DBdLZpHPrYcA0uqJyL7-PvhX5VcbsVR1Z9VQE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1b7257e0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1521,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.254531,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:43866","level":"info","msg":"Received request.","req_id":1522,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1b72a600-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931201,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMX0.qgRdY0DBdLZpHPrYcA0uqJyL7-PvhX5VcbsVR1Z9VQE"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"1b72a600-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43866","level":"info","msg":"Sent response.","req_id":1522,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.995315,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52b2ed77-44bf-4e58-b482-96b69e186170","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c5d6daf2-2440-4ba9-b347-6c50e074172b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.1305146} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1b72f420-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1b72f420-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52b2ed77-44bf-4e58-b482-96b69e186170","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52b2ed77-44bf-4e58-b482-96b69e186170","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:38.757746570Z"}]},"request_id":"fba57465-f5d6-4166-aa99-790a86046324","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.132357} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"1b7257e0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ecbc203-fc3b-425b-b117-7b9565280f29","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ecbc203-fc3b-425b-b117-7b9565280f29","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:38.809111361Z"}]},"request_id":"03d37f16-22c7-47ae-8fef-7046b79ee1f7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.1360488} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1b72f420-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/52b2ed77-44bf-4e58-b482-96b69e186170/signaling 200 15ms","method":"POST","requestID":"1b72f420-782b-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/52b2ed77-44bf-4e58-b482-96b69e186170/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1b72a600-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1b75b340-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1523,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:41Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1b7257e0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/52b2ed77-44bf-4e58-b482-96b69e186170? 200 27ms","method":"GET","requestID":"1b7257e0-782b-11ef-88d4-5fea3f61bb98","responseTime":27,"status":200,"url":"/devices/52b2ed77-44bf-4e58-b482-96b69e186170?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1b72a600-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/9ecbc203-fc3b-425b-b117-7b9565280f29? 200 26ms","method":"GET","requestID":"1b72a600-782b-11ef-88d4-5fea3f61bb98","responseTime":26,"status":200,"url":"/devices/9ecbc203-fc3b-425b-b117-7b9565280f29?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ecbc203-fc3b-425b-b117-7b9565280f29","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b4928100-b753-40c0-9d85-6c119b512a07","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.1466532} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1523,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.385388,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:41Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1b76ebc0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1b75b340-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1b75b340-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6209daa4-e91a-4f73-b174-d35bc643ba0f#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6209daa4-e91a-4f73-b174-d35bc643ba0f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"fe0b069d-9c4e-4209-8cd6-552f8091115d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.1482334} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"60de18de-6bb7-4ed1-83f4-242755852bf6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.1485655} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"b1e9dbbc46f13b8099df499944b835fd","responseTime":25,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1b75b340-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/9ecbc203-fc3b-425b-b117-7b9565280f29/signaling 200 13ms","method":"POST","requestID":"1b75b340-782b-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/9ecbc203-fc3b-425b-b117-7b9565280f29/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1524,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52b2ed77-44bf-4e58-b482-96b69e186170","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c1b61980-e76d-4cb1-a123-c13b1038ee4e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.1559172} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1524,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.403585,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1b76ebc0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1b76ebc0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"b1e9dbbc46f13b8099df499944b835fd"} gateway-1 | {"time_local":"21/Sep/2024:15:06:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.159","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b1e9dbbc46f13b8099df499944b835fd"} experiment-1 | {"level":"info","message":"POST /experiments? 201 154ms","method":"POST","requestID":"b1e9dbbc46f13b8099df499944b835fd","responseTime":154,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1b76ebc0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/52b2ed77-44bf-4e58-b482-96b69e186170/signaling 200 13ms","method":"POST","requestID":"1b76ebc0-782b-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/52b2ed77-44bf-4e58-b482-96b69e186170/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1b7935b0-782b-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMX0.qgRdY0DBdLZpHPrYcA0uqJyL7-PvhX5VcbsVR1Z9VQE","level":"info","message":"auth send jwt","requestID":"129c7f2eff24b351c29d13121539a7f9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"129c7f2eff24b351c29d13121539a7f9","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1525,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:41Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"129c7f2eff24b351c29d13121539a7f9"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ecbc203-fc3b-425b-b117-7b9565280f29","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bf5324f5-f448-4b56-ac1d-61b9fb084447","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.1702588} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1526,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1525,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.576436,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1b7935b0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1b7935b0-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1526,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.936816,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"129c7f2eff24b351c29d13121539a7f9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931201,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMX0.qgRdY0DBdLZpHPrYcA0uqJyL7-PvhX5VcbsVR1Z9VQE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"129c7f2eff24b351c29d13121539a7f9","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1b7935b0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/9ecbc203-fc3b-425b-b117-7b9565280f29/signaling 200 15ms","method":"POST","requestID":"1b7935b0-782b-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/9ecbc203-fc3b-425b-b117-7b9565280f29/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52b2ed77-44bf-4e58-b482-96b69e186170","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52b2ed77-44bf-4e58-b482-96b69e186170","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:38.757746570Z"}]},"request_id":"9ca236e5-6f1d-4a03-a588-f3b48a4e4c85","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.1780593} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"b1e9dbbc46f13b8099df499944b835fd"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"129c7f2eff24b351c29d13121539a7f9","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1b7bf4d0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1b7c1be0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"129c7f2eff24b351c29d13121539a7f9"} device-1 | {"level":"info","message":"GET /devices/52b2ed77-44bf-4e58-b482-96b69e186170? 200 18ms","method":"GET","requestID":"129c7f2eff24b351c29d13121539a7f9","responseTime":18,"status":200,"url":"/devices/52b2ed77-44bf-4e58-b482-96b69e186170?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1527,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:41Z"} gateway-1 | {"time_local":"21/Sep/2024:15:06:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/52b2ed77-44bf-4e58-b482-96b69e186170? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"129c7f2eff24b351c29d13121539a7f9"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1527,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.953686,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1b7bf4d0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931201,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMX0.qgRdY0DBdLZpHPrYcA0uqJyL7-PvhX5VcbsVR1Z9VQE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1b7bf4d0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1528,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1528,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.04538,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1b7c1be0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931201,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMX0.qgRdY0DBdLZpHPrYcA0uqJyL7-PvhX5VcbsVR1Z9VQE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1b7c1be0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMX0.qgRdY0DBdLZpHPrYcA0uqJyL7-PvhX5VcbsVR1Z9VQE","level":"info","message":"auth send jwt","requestID":"0f654aebcb73edff535cea1db3e8192f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0f654aebcb73edff535cea1db3e8192f","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52b2ed77-44bf-4e58-b482-96b69e186170","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52b2ed77-44bf-4e58-b482-96b69e186170","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:38.757746570Z"}]},"request_id":"51223ee4-0ccf-402a-a6e0-152ae5713dae","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.1903787} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0f654aebcb73edff535cea1db3e8192f"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1b7bf4d0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ecbc203-fc3b-425b-b117-7b9565280f29","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ecbc203-fc3b-425b-b117-7b9565280f29","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:38.809111361Z"}]},"request_id":"aab5a4de-8af6-42b7-b1ad-5cb320661f0e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.1914527} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1b7c1be0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1529,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1529,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.783095,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:41Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1b7bf4d0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/52b2ed77-44bf-4e58-b482-96b69e186170? 200 16ms","method":"GET","requestID":"1b7bf4d0-782b-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/52b2ed77-44bf-4e58-b482-96b69e186170?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0f654aebcb73edff535cea1db3e8192f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931201,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMX0.qgRdY0DBdLZpHPrYcA0uqJyL7-PvhX5VcbsVR1Z9VQE"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1b7c1be0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0f654aebcb73edff535cea1db3e8192f","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/9ecbc203-fc3b-425b-b117-7b9565280f29? 200 16ms","method":"GET","requestID":"1b7c1be0-782b-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/9ecbc203-fc3b-425b-b117-7b9565280f29?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f"},"level":"info","message":"Building connection plan","requestID":"b1e9dbbc46f13b8099df499944b835fd"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"d4ba4ab5-bb9c-4167-a587-7306a9121fed"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"4cf6189f-e319-4e08-9efd-c8c599e2d619"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"1748023b-04cf-4a9f-80f4-2359ae13fda3"}]},"level":"info","message":"Built pairwise service configurations","requestID":"b1e9dbbc46f13b8099df499944b835fd"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ecbc203-fc3b-425b-b117-7b9565280f29","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ecbc203-fc3b-425b-b117-7b9565280f29","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:38.809111361Z"}]},"request_id":"76ff9d5a-dd1e-4a3d-bb4e-e9bb03070f18","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.2018456} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"1b7f2920-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"1b7f2920-782b-11ef-938d-0b888d58857d"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0f654aebcb73edff535cea1db3e8192f","responseTime":3,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"1b7f2920-782b-11ef-938d-0b888d58857d","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/a2f83610-2a97-4092-80d7-5e8cbcef1941?id=866d33da-dc7b-4a4a-b908-e8b47001af05","ws://localhost/rooms/a2f83610-2a97-4092-80d7-5e8cbcef1941?id=7aec7488-dcee-43ac-b2e6-b182922058db"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"b1e9dbbc46f13b8099df499944b835fd"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"1b7fc560-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0f654aebcb73edff535cea1db3e8192f"} gateway-1 | {"time_local":"21/Sep/2024:15:06:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9ecbc203-fc3b-425b-b117-7b9565280f29? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0f654aebcb73edff535cea1db3e8192f"} device-1 | {"level":"info","message":"GET /devices/9ecbc203-fc3b-425b-b117-7b9565280f29? 200 16ms","method":"GET","requestID":"0f654aebcb73edff535cea1db3e8192f","responseTime":16,"status":200,"url":"/devices/9ecbc203-fc3b-425b-b117-7b9565280f29?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1530,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1530,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.978205,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1b7fc560-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931201,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMX0.qgRdY0DBdLZpHPrYcA0uqJyL7-PvhX5VcbsVR1Z9VQE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1b7fc560-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"c293bd8e-9ab0-485a-a66b-9ad023458b6f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.2226017} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0ded6d59-876a-4080-a9b4-ae6006a1ccb4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.222875} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"1b7fc560-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"1b7fc560-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"1b7fc560-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/c5585e84-d58c-4d29-95cc-300ae618dfe4'","requestID":"1b7fc560-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/c5585e84-d58c-4d29-95cc-300ae618dfe4'","requestID":"1b7fc560-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"1b7fc560-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 30ms","method":"POST","requestID":"1b7fc560-782b-11ef-88d4-5fea3f61bb98","responseTime":30,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"1b7fc560-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c5585e84-d58c-4d29-95cc-300ae618dfe4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c5585e84-d58c-4d29-95cc-300ae618dfe4","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"1b865510-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"866d33da-dc7b-4a4a-b908-e8b47001af05\" in room \"http://localhost/rooms/a2f83610-2a97-4092-80d7-5e8cbcef1941\"","requestID":"1b865510-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"1b865510-782b-11ef-938d-0b888d58857d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ff136b1abc5938816f6e48086d064cff","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ff136b1abc5938816f6e48086d064cff","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"1b86ca40-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"7aec7488-dcee-43ac-b2e6-b182922058db\" in room \"http://localhost/rooms/a2f83610-2a97-4092-80d7-5e8cbcef1941\"","requestID":"1b86ca40-782b-11ef-938d-0b888d58857d"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/c5585e84-d58c-4d29-95cc-300ae618dfe4"}}},"level":"info","message":"received a callback","requestID":"ff136b1abc5938816f6e48086d064cff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"1b86ca40-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"7aec7488-dcee-43ac-b2e6-b182922058db\" in room \"http://localhost/rooms/a2f83610-2a97-4092-80d7-5e8cbcef1941\"","requestID":"1b86ca40-782b-11ef-938d-0b888d58857d"} device-1 | {"data":{"peerconnection":"c5585e84-d58c-4d29-95cc-300ae618dfe4","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 13ms","method":"POST","requestID":"ff136b1abc5938816f6e48086d064cff","responseTime":13,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch","requestID":"ff136b1abc5938816f6e48086d064cff"} device-1 | {"data":{"peerconnection":"c5585e84-d58c-4d29-95cc-300ae618dfe4","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"b1e9dbbc46f13b8099df499944b835fd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1b8b1000-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1531,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52b2ed77-44bf-4e58-b482-96b69e186170","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"83e50a78-6f38-417a-956a-f383b9720142","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.2851548} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1531,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.621512,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1b8b1000-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c5585e84-d58c-4d29-95cc-300ae618dfe4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c5585e84-d58c-4d29-95cc-300ae618dfe4","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1b8b1000-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8d9820770f0ea92235a1f8b706679a34","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8d9820770f0ea92235a1f8b706679a34","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/c5585e84-d58c-4d29-95cc-300ae618dfe4"}}},"level":"info","message":"received a callback","requestID":"8d9820770f0ea92235a1f8b706679a34"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1b8b1000-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/52b2ed77-44bf-4e58-b482-96b69e186170/signaling 200 12ms","method":"POST","requestID":"1b8b1000-782b-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/52b2ed77-44bf-4e58-b482-96b69e186170/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1b8d32e0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1532,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:41Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"1b8dcf20-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ecbc203-fc3b-425b-b117-7b9565280f29","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"528c8609-373d-4ea7-9c02-39995c55862a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.2987585} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1532,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.575844,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1533,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1b8d32e0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1b8d32e0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc5585e84-d58c-4d29-95cc-300ae618dfe4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d7103ac4-6035-4ef1-8b22-a822cf3bd812","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.3028917} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1533,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.178551,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:41Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1b8d32e0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c5585e84-d58c-4d29-95cc-300ae618dfe4","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1b8dcf20-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/c5585e84-d58c-4d29-95cc-300ae618dfe4","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"POST /devices/9ecbc203-fc3b-425b-b117-7b9565280f29/signaling 200 10ms","method":"POST","requestID":"1b8d32e0-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/9ecbc203-fc3b-425b-b117-7b9565280f29/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1b8dcf20-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"1b8dcf20-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/c5585e84-d58c-4d29-95cc-300ae618dfe4 200 10ms","method":"GET","requestID":"1b8dcf20-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/peerconnections/c5585e84-d58c-4d29-95cc-300ae618dfe4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 32ms","method":"POST","requestID":"8d9820770f0ea92235a1f8b706679a34","responseTime":32,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.037","http_referrer":"","http_user_agent":"node-fetch","requestID":"8d9820770f0ea92235a1f8b706679a34"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1b91c6c0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1534,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52b2ed77-44bf-4e58-b482-96b69e186170","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"09f63064-986e-4748-a80b-b610c5e1d9bc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.3287532} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1534,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.26085,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1b91c6c0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1b91c6c0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1b91c6c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/52b2ed77-44bf-4e58-b482-96b69e186170/signaling 200 9ms","method":"POST","requestID":"1b91c6c0-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/52b2ed77-44bf-4e58-b482-96b69e186170/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1b937470-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1535,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ecbc203-fc3b-425b-b117-7b9565280f29","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"137ec431-8696-42f9-84e3-2b5f9d2f0990","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.3394213} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1535,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.32561,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1b937470-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1b937470-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1b937470-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/9ecbc203-fc3b-425b-b117-7b9565280f29/signaling 200 8ms","method":"POST","requestID":"1b937470-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/9ecbc203-fc3b-425b-b117-7b9565280f29/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMX0.qgRdY0DBdLZpHPrYcA0uqJyL7-PvhX5VcbsVR1Z9VQE","level":"info","message":"auth send jwt","requestID":"117c1680320ff0b59184ee477d674a22"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"117c1680320ff0b59184ee477d674a22","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f","requestID":"117c1680320ff0b59184ee477d674a22"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1536,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1536,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.763562,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"117c1680320ff0b59184ee477d674a22","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931201,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMX0.qgRdY0DBdLZpHPrYcA0uqJyL7-PvhX5VcbsVR1Z9VQE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"117c1680320ff0b59184ee477d674a22","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f","requestID":"117c1680320ff0b59184ee477d674a22"} experiment-1 | {"level":"info","message":"GET /experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f 200 12ms","method":"GET","requestID":"117c1680320ff0b59184ee477d674a22","responseTime":12,"status":200,"url":"/experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f"} gateway-1 | {"time_local":"21/Sep/2024:15:06:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"117c1680320ff0b59184ee477d674a22"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMX0.qgRdY0DBdLZpHPrYcA0uqJyL7-PvhX5VcbsVR1Z9VQE","level":"info","message":"auth send jwt","requestID":"758e7c333cb9be21c0b0221e12b14a35"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"758e7c333cb9be21c0b0221e12b14a35","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f","requestID":"758e7c333cb9be21c0b0221e12b14a35"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1537,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1537,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.065906,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"758e7c333cb9be21c0b0221e12b14a35","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931201,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMX0.qgRdY0DBdLZpHPrYcA0uqJyL7-PvhX5VcbsVR1Z9VQE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"758e7c333cb9be21c0b0221e12b14a35","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f"},"level":"info","message":"Attempting to finish experiment","requestID":"758e7c333cb9be21c0b0221e12b14a35"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"1b9c7520-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1538,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1538,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.746165,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c5585e84-d58c-4d29-95cc-300ae618dfe4","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1b9c7520-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/c5585e84-d58c-4d29-95cc-300ae618dfe4","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931201,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMX0.qgRdY0DBdLZpHPrYcA0uqJyL7-PvhX5VcbsVR1Z9VQE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1b9c7520-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:06:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/a2f83610-2a97-4092-80d7-5e8cbcef1941?id=866d33da-dc7b-4a4a-b908-e8b47001af05 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.158","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"48e5f6fa3678cc04aee92327ca6740be"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"866d33da-dc7b-4a4a-b908-e8b47001af05\" in room \"http://localhost/rooms/a2f83610-2a97-4092-80d7-5e8cbcef1941\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"866d33da-dc7b-4a4a-b908-e8b47001af05\" from room \"http://localhost/rooms/a2f83610-2a97-4092-80d7-5e8cbcef1941\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c5585e84-d58c-4d29-95cc-300ae618dfe4' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/c5585e84-d58c-4d29-95cc-300ae618dfe4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c5585e84-d58c-4d29-95cc-300ae618dfe4","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"21/Sep/2024:15:06:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/a2f83610-2a97-4092-80d7-5e8cbcef1941?id=7aec7488-dcee-43ac-b2e6-b182922058db HTTP/1.1","status": "101","body_bytes_sent":"460","request_time":"0.157","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e801dcee267ac254a8344ce7feabdc50"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"7aec7488-dcee-43ac-b2e6-b182922058db\" in room \"http://localhost/rooms/a2f83610-2a97-4092-80d7-5e8cbcef1941\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"7aec7488-dcee-43ac-b2e6-b182922058db\" from room \"http://localhost/rooms/a2f83610-2a97-4092-80d7-5e8cbcef1941\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/c5585e84-d58c-4d29-95cc-300ae618dfe4","device":"9ecbc203-fc3b-425b-b117-7b9565280f29","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6434bff5550fe75d68b9a86b95ad0461","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc5585e84-d58c-4d29-95cc-300ae618dfe4': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc5585e84-d58c-4d29-95cc-300ae618dfe4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"fd8cb338-320f-421d-9dbc-b57d024cdf6b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.4112995} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6434bff5550fe75d68b9a86b95ad0461","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"75d0bdcfc4a23d61c9726d460209226e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f706d97a-4a9b-4df5-9f9f-a79fbc937d3c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.411706} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"75d0bdcfc4a23d61c9726d460209226e","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/c5585e84-d58c-4d29-95cc-300ae618dfe4"}}},"level":"info","message":"received a callback","requestID":"6434bff5550fe75d68b9a86b95ad0461"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"1b9c7520-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/c5585e84-d58c-4d29-95cc-300ae618dfe4"}}},"level":"info","message":"received a callback","requestID":"75d0bdcfc4a23d61c9726d460209226e"} device-1 | {"data":{"peerconnection":"c5585e84-d58c-4d29-95cc-300ae618dfe4","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"1b9c7520-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/c5585e84-d58c-4d29-95cc-300ae618dfe4 204 37ms","method":"DELETE","requestID":"1b9c7520-782b-11ef-88d4-5fea3f61bb98","responseTime":37,"status":204,"url":"/peerconnections/c5585e84-d58c-4d29-95cc-300ae618dfe4"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f"},"level":"info","message":"Successfully finished experiment","requestID":"758e7c333cb9be21c0b0221e12b14a35"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1ba527b0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1539,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52b2ed77-44bf-4e58-b482-96b69e186170","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"53fb0157-682c-4668-9a80-1b71bbd2a0ca","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.4570796} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1539,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.612022,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1ba527b0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1ba527b0-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1ba527b0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/52b2ed77-44bf-4e58-b482-96b69e186170/signaling 200 11ms","method":"POST","requestID":"1ba527b0-782b-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/52b2ed77-44bf-4e58-b482-96b69e186170/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6209daa4-e91a-4f73-b174-d35bc643ba0f': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6209daa4-e91a-4f73-b174-d35bc643ba0f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"30334089-bcbe-449a-9e2b-695ca6b95f91","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.464895} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c5023742-d427-4725-9995-5c34d3404333","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.4650934} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1ba74a90-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"758e7c333cb9be21c0b0221e12b14a35","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1540,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ecbc203-fc3b-425b-b117-7b9565280f29","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9fa70f7f-c2cd-48f1-9895-3f47011a976e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.470666} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1540,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.318329,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1ba74a90-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1ba74a90-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1ba74a90-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/9ecbc203-fc3b-425b-b117-7b9565280f29/signaling 200 11ms","method":"POST","requestID":"1ba74a90-782b-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/9ecbc203-fc3b-425b-b117-7b9565280f29/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f","requestID":"758e7c333cb9be21c0b0221e12b14a35"} gateway-1 | {"time_local":"21/Sep/2024:15:06:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.151","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"758e7c333cb9be21c0b0221e12b14a35"} experiment-1 | {"level":"info","message":"DELETE /experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f 204 147ms","method":"DELETE","requestID":"758e7c333cb9be21c0b0221e12b14a35","responseTime":147,"status":204,"url":"/experiments/6209daa4-e91a-4f73-b174-d35bc643ba0f"} gateway-1 | {"time_local":"21/Sep/2024:15:06:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1746","request_time":"2.179","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"0b68125e526bd5d1af5f0853385fbf79"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMX0.qgRdY0DBdLZpHPrYcA0uqJyL7-PvhX5VcbsVR1Z9VQE","level":"info","message":"auth send jwt","requestID":"e3c995e76118725b7606e502aa4e05d8"} gateway-1 | {"time_local":"21/Sep/2024:15:06:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.123","http_referrer":"","http_user_agent":"node-fetch","requestID":"6434bff5550fe75d68b9a86b95ad0461"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e3c995e76118725b7606e502aa4e05d8","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 120ms","method":"POST","requestID":"6434bff5550fe75d68b9a86b95ad0461","responseTime":120,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevices called","requestID":"e3c995e76118725b7606e502aa4e05d8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"75d0bdcfc4a23d61c9726d460209226e","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.127","http_referrer":"","http_user_agent":"node-fetch","requestID":"75d0bdcfc4a23d61c9726d460209226e"} gateway-1 | {"time_local":"21/Sep/2024:15:06:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2067","request_time":"0.670","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e31153ae72370580cd73155b45c9ec86"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1541,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1541,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.436837,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e3c995e76118725b7606e502aa4e05d8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931201,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMX0.qgRdY0DBdLZpHPrYcA0uqJyL7-PvhX5VcbsVR1Z9VQE"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"e3c995e76118725b7606e502aa4e05d8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/52b2ed77-44bf-4e58-b482-96b69e186170' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90a7df0e-bc70-4078-985d-ff988e9b9a60","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"173e639f-9cce-4c7a-87c4-66104c8ec75d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.5619955} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e3c995e76118725b7606e502aa4e05d8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/9ecbc203-fc3b-425b-b117-7b9565280f29' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"703cb524-01d3-4d62-adf3-ff7007170c80","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.5672717} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e3c995e76118725b7606e502aa4e05d8","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90a7df0e-bc70-4078-985d-ff988e9b9a60","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"ec57786d-02b0-48a0-8da4-c219579a5325","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.576003} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5a2100db-2110-4fd1-b4fb-41f9337ea749","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.5760837} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"e3c995e76118725b7606e502aa4e05d8","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90a7df0e-bc70-4078-985d-ff988e9b9a60","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90a7df0e-bc70-4078-985d-ff988e9b9a60","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:41.575943900Z"}]},"request_id":"5a10812e-a307-4133-837b-288830458ab8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.5798917} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e3c995e76118725b7606e502aa4e05d8","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e3c995e76118725b7606e502aa4e05d8"} gateway-1 | {"time_local":"21/Sep/2024:15:06:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e3c995e76118725b7606e502aa4e05d8"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"e3c995e76118725b7606e502aa4e05d8","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMX0.qgRdY0DBdLZpHPrYcA0uqJyL7-PvhX5VcbsVR1Z9VQE","level":"info","message":"auth send jwt","requestID":"1381e2e9d5a360a8e5edf4c169a8021b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1381e2e9d5a360a8e5edf4c169a8021b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1381e2e9d5a360a8e5edf4c169a8021b"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1542,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1542,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.02567,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1381e2e9d5a360a8e5edf4c169a8021b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931201,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMX0.qgRdY0DBdLZpHPrYcA0uqJyL7-PvhX5VcbsVR1Z9VQE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1381e2e9d5a360a8e5edf4c169a8021b","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79baf2c2-5634-4799-bfe5-12dd25f0de8c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"bad9e7d2-69a3-454d-964d-3033fe5261ba","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.608326} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1381e2e9d5a360a8e5edf4c169a8021b","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c0c74cfb-bc05-41a8-ad5b-70426953ea00","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.612787} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1381e2e9d5a360a8e5edf4c169a8021b","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79baf2c2-5634-4799-bfe5-12dd25f0de8c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"dda0cd97-d9a0-46f6-998d-148038065e92","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.623693} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1507c075-79b6-4b8f-9923-a14bf9d7292e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.6239524} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"1381e2e9d5a360a8e5edf4c169a8021b","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79baf2c2-5634-4799-bfe5-12dd25f0de8c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79baf2c2-5634-4799-bfe5-12dd25f0de8c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:41.623645371Z"}]},"request_id":"d3f2e675-593c-4ef9-8098-fb8b20cfc732","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931201.6277013} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1381e2e9d5a360a8e5edf4c169a8021b","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1381e2e9d5a360a8e5edf4c169a8021b"} gateway-1 | {"time_local":"21/Sep/2024:15:06:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1381e2e9d5a360a8e5edf4c169a8021b"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"1381e2e9d5a360a8e5edf4c169a8021b","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMn0.UEZqeuvx9Yj-IFM8XlfrsoLwvXf3tuQkaAsY5AWKVIA","level":"info","message":"auth send jwt","requestID":"becd6db12e61c04e96d77e762fb305f3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"becd6db12e61c04e96d77e762fb305f3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"becd6db12e61c04e96d77e762fb305f3"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1543,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:42Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1543,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.143298,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"becd6db12e61c04e96d77e762fb305f3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931202,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMn0.UEZqeuvx9Yj-IFM8XlfrsoLwvXf3tuQkaAsY5AWKVIA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"becd6db12e61c04e96d77e762fb305f3","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90a7df0e-bc70-4078-985d-ff988e9b9a60","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90a7df0e-bc70-4078-985d-ff988e9b9a60","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:41.575943900Z"}]},"request_id":"aab6b80d-cd5e-47bd-a618-161e103c646a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931202.1131008} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"becd6db12e61c04e96d77e762fb305f3","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5cbf9f75-3025-4252-a0c5-515dbc77e6ca","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931202.1208048} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"becd6db12e61c04e96d77e762fb305f3","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90a7df0e-bc70-4078-985d-ff988e9b9a60","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90a7df0e-bc70-4078-985d-ff988e9b9a60","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:41.575943900Z"}]},"request_id":"92f3b286-e535-4155-98f0-ddfda2a59e08","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931202.1326818} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"becd6db12e61c04e96d77e762fb305f3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"becd6db12e61c04e96d77e762fb305f3"} device-1 | {"level":"info","message":"PATCH /devices/90a7df0e-bc70-4078-985d-ff988e9b9a60 200 36ms","method":"PATCH","requestID":"becd6db12e61c04e96d77e762fb305f3","responseTime":36,"status":200,"url":"/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60"} gateway-1 | {"time_local":"21/Sep/2024:15:06:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/90a7df0e-bc70-4078-985d-ff988e9b9a60 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.042","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"becd6db12e61c04e96d77e762fb305f3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMn0.UEZqeuvx9Yj-IFM8XlfrsoLwvXf3tuQkaAsY5AWKVIA","level":"info","message":"auth send jwt","requestID":"c8e73107f633e41ba00707a177559ae6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c8e73107f633e41ba00707a177559ae6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c8e73107f633e41ba00707a177559ae6"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1544,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:42Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1544,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.697325,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c8e73107f633e41ba00707a177559ae6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931202,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwMn0.UEZqeuvx9Yj-IFM8XlfrsoLwvXf3tuQkaAsY5AWKVIA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c8e73107f633e41ba00707a177559ae6","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c8e73107f633e41ba00707a177559ae6"} device-1 | {"level":"info","message":"POST /devices/90a7df0e-bc70-4078-985d-ff988e9b9a60/websocket 200 21ms","method":"POST","requestID":"c8e73107f633e41ba00707a177559ae6","responseTime":21,"status":200,"url":"/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:06:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/90a7df0e-bc70-4078-985d-ff988e9b9a60/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c8e73107f633e41ba00707a177559ae6"} device-1 | {"level":"info","message":"device 'http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"631d74e58202e83f7c1e7b41fa784180","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"631d74e58202e83f7c1e7b41fa784180","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"631d74e58202e83f7c1e7b41fa784180"} device-1 | {"level":"info","message":"OPTIONS /devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c/websocket 200 1ms","method":"OPTIONS","requestID":"631d74e58202e83f7c1e7b41fa784180","responseTime":1,"status":200,"url":"/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwM30.oWNeBFaqSuD5o-TwijXZ3d6s_XlJhFwcIvs1beNCvLQ","level":"info","message":"auth send jwt","requestID":"beec2ddc2a31d9e770e4a1d53b9172af"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"beec2ddc2a31d9e770e4a1d53b9172af","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"beec2ddc2a31d9e770e4a1d53b9172af"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1545,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:43Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1545,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.150614,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"beec2ddc2a31d9e770e4a1d53b9172af","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931203,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwM30.oWNeBFaqSuD5o-TwijXZ3d6s_XlJhFwcIvs1beNCvLQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"beec2ddc2a31d9e770e4a1d53b9172af","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"beec2ddc2a31d9e770e4a1d53b9172af"} gateway-1 | {"time_local":"21/Sep/2024:15:06:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"beec2ddc2a31d9e770e4a1d53b9172af"} device-1 | {"level":"info","message":"POST /devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c/websocket 200 21ms","method":"POST","requestID":"beec2ddc2a31d9e770e4a1d53b9172af","responseTime":21,"status":200,"url":"/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c802cacae44cf66eb43084cac6fbc7cd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c802cacae44cf66eb43084cac6fbc7cd","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c802cacae44cf66eb43084cac6fbc7cd"} device-1 | {"level":"info","message":"OPTIONS /devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c? 200 1ms","method":"OPTIONS","requestID":"c802cacae44cf66eb43084cac6fbc7cd","responseTime":1,"status":200,"url":"/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwM30.oWNeBFaqSuD5o-TwijXZ3d6s_XlJhFwcIvs1beNCvLQ","level":"info","message":"auth send jwt","requestID":"b5f337968925e9637bb627f4aed6720b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b5f337968925e9637bb627f4aed6720b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b5f337968925e9637bb627f4aed6720b"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1546,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:43Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1546,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.152058,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b5f337968925e9637bb627f4aed6720b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931203,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwM30.oWNeBFaqSuD5o-TwijXZ3d6s_XlJhFwcIvs1beNCvLQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b5f337968925e9637bb627f4aed6720b","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79baf2c2-5634-4799-bfe5-12dd25f0de8c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79baf2c2-5634-4799-bfe5-12dd25f0de8c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:41.623645371Z"}]},"request_id":"a382e496-0315-48f2-8601-2def194b38b3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931203.7558928} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b5f337968925e9637bb627f4aed6720b","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a0b3f381-cfcc-4202-942a-964ce873c5aa","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931203.7625408} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b5f337968925e9637bb627f4aed6720b","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79baf2c2-5634-4799-bfe5-12dd25f0de8c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79baf2c2-5634-4799-bfe5-12dd25f0de8c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:41.623645371Z"}]},"request_id":"ade2677e-dca5-47fa-ac3b-853593292f00","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931203.7747676} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b5f337968925e9637bb627f4aed6720b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b5f337968925e9637bb627f4aed6720b"} device-1 | {"level":"info","message":"PATCH /devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c? 200 35ms","method":"PATCH","requestID":"b5f337968925e9637bb627f4aed6720b","responseTime":35,"status":200,"url":"/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.041","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b5f337968925e9637bb627f4aed6720b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwM30.oWNeBFaqSuD5o-TwijXZ3d6s_XlJhFwcIvs1beNCvLQ","level":"info","message":"auth send jwt","requestID":"3b1c8c3e88c372105337533e6747d4c5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3b1c8c3e88c372105337533e6747d4c5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3b1c8c3e88c372105337533e6747d4c5"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1547,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:43Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1547,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.232389,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"3b1c8c3e88c372105337533e6747d4c5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931203,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwM30.oWNeBFaqSuD5o-TwijXZ3d6s_XlJhFwcIvs1beNCvLQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3b1c8c3e88c372105337533e6747d4c5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90a7df0e-bc70-4078-985d-ff988e9b9a60","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90a7df0e-bc70-4078-985d-ff988e9b9a60","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:41.575943900Z"}]},"request_id":"954a33a1-c794-4baf-bd5c-737efc87d355","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931203.8026547} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3b1c8c3e88c372105337533e6747d4c5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3b1c8c3e88c372105337533e6747d4c5"} gateway-1 | {"time_local":"21/Sep/2024:15:06:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/90a7df0e-bc70-4078-985d-ff988e9b9a60? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3b1c8c3e88c372105337533e6747d4c5"} device-1 | {"level":"info","message":"GET /devices/90a7df0e-bc70-4078-985d-ff988e9b9a60? 200 17ms","method":"GET","requestID":"3b1c8c3e88c372105337533e6747d4c5","responseTime":17,"status":200,"url":"/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwM30.oWNeBFaqSuD5o-TwijXZ3d6s_XlJhFwcIvs1beNCvLQ","level":"info","message":"auth send jwt","requestID":"10c949b559ff5632b49a871d3c0e15ba"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"10c949b559ff5632b49a871d3c0e15ba","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"10c949b559ff5632b49a871d3c0e15ba"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1548,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:43Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1548,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.225585,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"10c949b559ff5632b49a871d3c0e15ba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931203,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwM30.oWNeBFaqSuD5o-TwijXZ3d6s_XlJhFwcIvs1beNCvLQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"10c949b559ff5632b49a871d3c0e15ba","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79baf2c2-5634-4799-bfe5-12dd25f0de8c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79baf2c2-5634-4799-bfe5-12dd25f0de8c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:41.623645371Z"}]},"request_id":"a04cb707-3382-4431-a701-4ec4196df081","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931203.826032} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"10c949b559ff5632b49a871d3c0e15ba","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"10c949b559ff5632b49a871d3c0e15ba"} gateway-1 | {"time_local":"21/Sep/2024:15:06:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"10c949b559ff5632b49a871d3c0e15ba"} device-1 | {"level":"info","message":"GET /devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c? 200 17ms","method":"GET","requestID":"10c949b559ff5632b49a871d3c0e15ba","responseTime":17,"status":200,"url":"/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwM30.oWNeBFaqSuD5o-TwijXZ3d6s_XlJhFwcIvs1beNCvLQ","level":"info","message":"auth send jwt","requestID":"6447cc2139c1137d1052b840e2d70923"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6447cc2139c1137d1052b840e2d70923","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"6447cc2139c1137d1052b840e2d70923"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1549,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:43Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1549,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.229556,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"6447cc2139c1137d1052b840e2d70923","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931203,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwM30.oWNeBFaqSuD5o-TwijXZ3d6s_XlJhFwcIvs1beNCvLQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6447cc2139c1137d1052b840e2d70923","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f"},"level":"info","message":"Attempting to run experiment","requestID":"6447cc2139c1137d1052b840e2d70923"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f"},"level":"info","message":"Attempting to book experiment","requestID":"6447cc2139c1137d1052b840e2d70923"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f"},"level":"info","message":"Successfully booked experiment","requestID":"6447cc2139c1137d1052b840e2d70923"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1d17ca80-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1d17f190-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1550,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:43Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1550,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.37147,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:43Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1551,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1d17ca80-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931203,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwM30.oWNeBFaqSuD5o-TwijXZ3d6s_XlJhFwcIvs1beNCvLQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1d17ca80-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1551,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.997528,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1d17f190-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931203,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwM30.oWNeBFaqSuD5o-TwijXZ3d6s_XlJhFwcIvs1beNCvLQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1d17f190-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90a7df0e-bc70-4078-985d-ff988e9b9a60","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90a7df0e-bc70-4078-985d-ff988e9b9a60","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:41.575943900Z"}]},"request_id":"bd59756a-a20c-4e35-8e94-5330273195f0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931203.8913515} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"1d17ca80-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79baf2c2-5634-4799-bfe5-12dd25f0de8c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79baf2c2-5634-4799-bfe5-12dd25f0de8c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:41.623645371Z"}]},"request_id":"7b6431f3-c070-492e-8117-1a6aa1b5e9dc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931203.8929157} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1d17f190-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1d17ca80-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/90a7df0e-bc70-4078-985d-ff988e9b9a60? 200 18ms","method":"GET","requestID":"1d17ca80-782b-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1d17f190-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c? 200 18ms","method":"GET","requestID":"1d17f190-782b-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f"},"level":"info","message":"Setting up experiment","requestID":"6447cc2139c1137d1052b840e2d70923"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"6447cc2139c1137d1052b840e2d70923"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f"},"level":"info","message":"Successfully locked booking for experiment","requestID":"6447cc2139c1137d1052b840e2d70923"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"6447cc2139c1137d1052b840e2d70923"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"6447cc2139c1137d1052b840e2d70923"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f"},"level":"info","message":"Attempting to update booking for experiment","requestID":"6447cc2139c1137d1052b840e2d70923"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f"},"level":"info","message":"Successfully updated booking for experiment","requestID":"6447cc2139c1137d1052b840e2d70923"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f"},"level":"info","message":"Successfully set up experiment","requestID":"6447cc2139c1137d1052b840e2d70923"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1d27d010-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1d281e30-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f"},"level":"info","message":"Successfully running experiment","requestID":"6447cc2139c1137d1052b840e2d70923"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1d286c50-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1552,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:43Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1552,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.539211,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1d27d010-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931203,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwM30.oWNeBFaqSuD5o-TwijXZ3d6s_XlJhFwcIvs1beNCvLQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1d27d010-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1553,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:43Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1553,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.63147,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1d281e30-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931203,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwM30.oWNeBFaqSuD5o-TwijXZ3d6s_XlJhFwcIvs1beNCvLQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"1d281e30-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1554,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:43Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90a7df0e-bc70-4078-985d-ff988e9b9a60","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e6fded7a-224f-4d71-9e45-999e5640a86a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931203.9987957} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90a7df0e-bc70-4078-985d-ff988e9b9a60","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90a7df0e-bc70-4078-985d-ff988e9b9a60","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:41.575943900Z"}]},"request_id":"4ee4845c-8168-47f0-8e22-6438dfe56aad","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.0003483} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1554,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.850428,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1d286c50-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"1d286c50-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"1d27d010-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79baf2c2-5634-4799-bfe5-12dd25f0de8c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79baf2c2-5634-4799-bfe5-12dd25f0de8c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:41.623645371Z"}]},"request_id":"a4c3576d-ad94-4e6f-8814-d7dd68142434","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.0024288} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"1d281e30-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa0c6c5d9-cc08-4aa1-9461-237eede7b69f#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa0c6c5d9-cc08-4aa1-9461-237eede7b69f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"d5245c17-feaa-4349-8560-155b698f84c8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.0075464} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"afc33b1f-e897-48ea-8f60-0d09f83a12a9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.0077767} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1d286c50-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/90a7df0e-bc70-4078-985d-ff988e9b9a60/signaling 200 20ms","method":"POST","requestID":"1d286c50-782b-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1d27d010-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"6447cc2139c1137d1052b840e2d70923","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/90a7df0e-bc70-4078-985d-ff988e9b9a60? 200 25ms","method":"GET","requestID":"1d27d010-782b-11ef-88d4-5fea3f61bb98","responseTime":25,"status":200,"url":"/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1d281e30-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c? 200 24ms","method":"GET","requestID":"1d281e30-782b-11ef-88d4-5fea3f61bb98","responseTime":24,"status":200,"url":"/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1d2beec0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1555,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:44Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1d2c63f0-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"6447cc2139c1137d1052b840e2d70923"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79baf2c2-5634-4799-bfe5-12dd25f0de8c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ee1fa584-1844-41b9-b80e-5433fa0538c0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.0166383} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1555,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.930323,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1556,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:44Z"} gateway-1 | {"time_local":"21/Sep/2024:15:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.185","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6447cc2139c1137d1052b840e2d70923"} experiment-1 | {"level":"info","message":"POST /experiments? 201 179ms","method":"POST","requestID":"6447cc2139c1137d1052b840e2d70923","responseTime":179,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1d2beec0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1d2beec0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNH0.b8OdJlZHyaY0lf2EwlXPThfCt3iyxl0iG_WkOk_mTxY","level":"info","message":"auth send jwt","requestID":"52a52bf27987dd5d1186e27a717e8eb6"} device-1 | {"level":"info","message":"POST /devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c/signaling 200 11ms","method":"POST","requestID":"1d2beec0-782b-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1d2beec0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90a7df0e-bc70-4078-985d-ff988e9b9a60","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"82af30dc-5a80-410b-8850-75dacbfd610b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.025139} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"52a52bf27987dd5d1186e27a717e8eb6","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"52a52bf27987dd5d1186e27a717e8eb6"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1556,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":10.20458,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1557,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1d2c63f0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"1d2c63f0-782b-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1557,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.631791,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"52a52bf27987dd5d1186e27a717e8eb6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931204,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNH0.b8OdJlZHyaY0lf2EwlXPThfCt3iyxl0iG_WkOk_mTxY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"52a52bf27987dd5d1186e27a717e8eb6","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1d2c63f0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/90a7df0e-bc70-4078-985d-ff988e9b9a60/signaling 200 18ms","method":"POST","requestID":"1d2c63f0-782b-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90a7df0e-bc70-4078-985d-ff988e9b9a60","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90a7df0e-bc70-4078-985d-ff988e9b9a60","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:41.575943900Z"}]},"request_id":"be7e3f61-2875-40b2-972a-a3da792624a0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.0333557} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"52a52bf27987dd5d1186e27a717e8eb6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1d2f9840-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1558,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:44Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"52a52bf27987dd5d1186e27a717e8eb6"} device-1 | {"level":"info","message":"GET /devices/90a7df0e-bc70-4078-985d-ff988e9b9a60? 200 14ms","method":"GET","requestID":"52a52bf27987dd5d1186e27a717e8eb6","responseTime":14,"status":200,"url":"/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79baf2c2-5634-4799-bfe5-12dd25f0de8c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5a37b3af-071b-4b13-8b7a-fd787e810635","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.0400126} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1558,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.883792,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:44Z"} gateway-1 | {"time_local":"21/Sep/2024:15:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/90a7df0e-bc70-4078-985d-ff988e9b9a60? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"52a52bf27987dd5d1186e27a717e8eb6"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1d2f9840-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1d2f9840-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1d2f9840-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c/signaling 200 9ms","method":"POST","requestID":"1d2f9840-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNH0.b8OdJlZHyaY0lf2EwlXPThfCt3iyxl0iG_WkOk_mTxY","level":"info","message":"auth send jwt","requestID":"a094b71cec623306bf25a7b7b4dbc6d5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a094b71cec623306bf25a7b7b4dbc6d5","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"6447cc2139c1137d1052b840e2d70923"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a094b71cec623306bf25a7b7b4dbc6d5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1d3145f0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1d316d00-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1559,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1560,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1559,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.907753,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1560,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.583689,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a094b71cec623306bf25a7b7b4dbc6d5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931204,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNH0.b8OdJlZHyaY0lf2EwlXPThfCt3iyxl0iG_WkOk_mTxY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a094b71cec623306bf25a7b7b4dbc6d5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1d3145f0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931203,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwM30.oWNeBFaqSuD5o-TwijXZ3d6s_XlJhFwcIvs1beNCvLQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1d3145f0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43866","level":"info","msg":"Received request.","req_id":1561,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"client_addr":"127.0.0.1:43866","level":"info","msg":"Sent response.","req_id":1561,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.923371,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1d316d00-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931203,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwM30.oWNeBFaqSuD5o-TwijXZ3d6s_XlJhFwcIvs1beNCvLQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1d316d00-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79baf2c2-5634-4799-bfe5-12dd25f0de8c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79baf2c2-5634-4799-bfe5-12dd25f0de8c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:41.623645371Z"}]},"request_id":"989c3617-b8e4-4085-a6d1-070a6533a4bc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.0548003} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90a7df0e-bc70-4078-985d-ff988e9b9a60","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90a7df0e-bc70-4078-985d-ff988e9b9a60","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:41.575943900Z"}]},"request_id":"ed1b5796-6c9b-4d89-b2d1-035c902b6a91","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.0555718} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a094b71cec623306bf25a7b7b4dbc6d5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1d3145f0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79baf2c2-5634-4799-bfe5-12dd25f0de8c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79baf2c2-5634-4799-bfe5-12dd25f0de8c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:41.623645371Z"}]},"request_id":"cc9ac907-d5bc-452b-bfa4-86075d2be2c3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.0563347} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1d316d00-782b-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a094b71cec623306bf25a7b7b4dbc6d5"} device-1 | {"level":"info","message":"GET /devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c? 200 15ms","method":"GET","requestID":"a094b71cec623306bf25a7b7b4dbc6d5","responseTime":15,"status":200,"url":"/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a094b71cec623306bf25a7b7b4dbc6d5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1d3145f0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/90a7df0e-bc70-4078-985d-ff988e9b9a60? 200 14ms","method":"GET","requestID":"1d3145f0-782b-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1d316d00-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c? 200 14ms","method":"GET","requestID":"1d316d00-782b-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f"},"level":"info","message":"Building connection plan","requestID":"6447cc2139c1137d1052b840e2d70923"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"c19ca3da-06fd-43c7-9d73-63f5c9351e6b"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"4c6e894a-5cdf-4771-ba28-ce414f9913e4"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"516b1f75-a0df-4858-8cca-d4f78bd145d8"}]},"level":"info","message":"Built pairwise service configurations","requestID":"6447cc2139c1137d1052b840e2d70923"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"1d33de00-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"1d33de00-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"1d33de00-782b-11ef-938d-0b888d58857d","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/7ebc8bfd-5a10-4fec-aafe-6a93892be856?id=53e77828-8680-44ff-b9e9-ede9d823c1fe","ws://localhost/rooms/7ebc8bfd-5a10-4fec-aafe-6a93892be856?id=f8cfdcfe-318f-482a-ba90-e0a801ce82a3"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"6447cc2139c1137d1052b840e2d70923"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"1d345330-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1562,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1562,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.672247,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1d345330-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931203,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwM30.oWNeBFaqSuD5o-TwijXZ3d6s_XlJhFwcIvs1beNCvLQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1d345330-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"2385f96c-0299-46ed-8f8a-7edee60624cb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.077558} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bc161630-ef16-4126-88ea-0d043c84721e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.077763} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"1d345330-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"1d345330-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"1d345330-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/0dfb8f2a-e250-4655-8bec-09fb2d486467'","requestID":"1d345330-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/0dfb8f2a-e250-4655-8bec-09fb2d486467'","requestID":"1d345330-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"1d345330-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 22ms","method":"POST","requestID":"1d345330-782b-11ef-88d4-5fea3f61bb98","responseTime":22,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"1d345330-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/0dfb8f2a-e250-4655-8bec-09fb2d486467' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0dfb8f2a-e250-4655-8bec-09fb2d486467","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"1d393530-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"53e77828-8680-44ff-b9e9-ede9d823c1fe\" in room \"http://localhost/rooms/7ebc8bfd-5a10-4fec-aafe-6a93892be856\"","requestID":"1d393530-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"1d393530-782b-11ef-938d-0b888d58857d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"06c45fbba2973df995d34b1094972156","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"06c45fbba2973df995d34b1094972156","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"1d398350-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f8cfdcfe-318f-482a-ba90-e0a801ce82a3\" in room \"http://localhost/rooms/7ebc8bfd-5a10-4fec-aafe-6a93892be856\"","requestID":"1d398350-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"1d398350-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f8cfdcfe-318f-482a-ba90-e0a801ce82a3\" in room \"http://localhost/rooms/7ebc8bfd-5a10-4fec-aafe-6a93892be856\"","requestID":"1d398350-782b-11ef-938d-0b888d58857d"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/0dfb8f2a-e250-4655-8bec-09fb2d486467"}}},"level":"info","message":"received a callback","requestID":"06c45fbba2973df995d34b1094972156"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f8cfdcfe-318f-482a-ba90-e0a801ce82a3\" in room \"http://localhost/rooms/7ebc8bfd-5a10-4fec-aafe-6a93892be856\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f8cfdcfe-318f-482a-ba90-e0a801ce82a3\" in room \"http://localhost/rooms/7ebc8bfd-5a10-4fec-aafe-6a93892be856\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f8cfdcfe-318f-482a-ba90-e0a801ce82a3\" in room \"http://localhost/rooms/7ebc8bfd-5a10-4fec-aafe-6a93892be856\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f8cfdcfe-318f-482a-ba90-e0a801ce82a3\" in room \"http://localhost/rooms/7ebc8bfd-5a10-4fec-aafe-6a93892be856\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"06c45fbba2973df995d34b1094972156","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"06c45fbba2973df995d34b1094972156"} device-1 | {"data":{"peerconnection":"0dfb8f2a-e250-4655-8bec-09fb2d486467","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"6447cc2139c1137d1052b840e2d70923"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1d3cdeb0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1563,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90a7df0e-bc70-4078-985d-ff988e9b9a60","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bf4be7e4-e351-433b-8a73-7d9303f78213","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.128704} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1563,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.966303,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1d3cdeb0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1d3cdeb0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"peerconnection":"0dfb8f2a-e250-4655-8bec-09fb2d486467","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1d3cdeb0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/90a7df0e-bc70-4078-985d-ff988e9b9a60/signaling 200 16ms","method":"POST","requestID":"1d3cdeb0-782b-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1d3fc4e0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1564,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79baf2c2-5634-4799-bfe5-12dd25f0de8c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c6672738-6e60-450b-9b31-3d45125aadc7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.14609} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1564,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":1.989555,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1d3fc4e0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1d3fc4e0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/0dfb8f2a-e250-4655-8bec-09fb2d486467' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0dfb8f2a-e250-4655-8bec-09fb2d486467","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1d3fc4e0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c/signaling 200 13ms","method":"POST","requestID":"1d3fc4e0-782b-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b485967c35da8e258a6a279053e6b297","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b485967c35da8e258a6a279053e6b297","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/0dfb8f2a-e250-4655-8bec-09fb2d486467"}}},"level":"info","message":"received a callback","requestID":"b485967c35da8e258a6a279053e6b297"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"1d42ab10-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1565,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0dfb8f2a-e250-4655-8bec-09fb2d486467","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"93f7b426-404f-492f-a845-080a38dea80d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.1664562} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1565,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.438283,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0dfb8f2a-e250-4655-8bec-09fb2d486467","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1d42ab10-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/0dfb8f2a-e250-4655-8bec-09fb2d486467","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1d42ab10-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"1d42ab10-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/0dfb8f2a-e250-4655-8bec-09fb2d486467 200 9ms","method":"GET","requestID":"1d42ab10-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/peerconnections/0dfb8f2a-e250-4655-8bec-09fb2d486467"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 28ms","method":"POST","requestID":"b485967c35da8e258a6a279053e6b297","responseTime":28,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"b485967c35da8e258a6a279053e6b297"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1d467ba0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1566,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90a7df0e-bc70-4078-985d-ff988e9b9a60","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1bf5cfe1-79eb-4702-b9f2-fb64d6e81791","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.190479} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1566,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.168937,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1d467ba0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1d467ba0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1d467ba0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/90a7df0e-bc70-4078-985d-ff988e9b9a60/signaling 200 8ms","method":"POST","requestID":"1d467ba0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1d480240-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1567,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79baf2c2-5634-4799-bfe5-12dd25f0de8c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fa2219b9-eb11-4cdf-a894-4ed5a272f704","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.2001758} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1567,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.33239,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1d480240-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1d480240-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1d480240-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c/signaling 200 8ms","method":"POST","requestID":"1d480240-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNH0.b8OdJlZHyaY0lf2EwlXPThfCt3iyxl0iG_WkOk_mTxY","level":"info","message":"auth send jwt","requestID":"d9585c1bc4b10ef436b1640f6e65fdda"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d9585c1bc4b10ef436b1640f6e65fdda","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f","requestID":"d9585c1bc4b10ef436b1640f6e65fdda"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1568,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1568,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.52255,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d9585c1bc4b10ef436b1640f6e65fdda","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931204,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNH0.b8OdJlZHyaY0lf2EwlXPThfCt3iyxl0iG_WkOk_mTxY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d9585c1bc4b10ef436b1640f6e65fdda","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f","requestID":"d9585c1bc4b10ef436b1640f6e65fdda"} experiment-1 | {"level":"info","message":"GET /experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f 200 10ms","method":"GET","requestID":"d9585c1bc4b10ef436b1640f6e65fdda","responseTime":10,"status":200,"url":"/experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f"} gateway-1 | {"time_local":"21/Sep/2024:15:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d9585c1bc4b10ef436b1640f6e65fdda"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNH0.b8OdJlZHyaY0lf2EwlXPThfCt3iyxl0iG_WkOk_mTxY","level":"info","message":"auth send jwt","requestID":"b2a6d13a6ad994ca3a6e521baf84d57f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b2a6d13a6ad994ca3a6e521baf84d57f","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f","requestID":"b2a6d13a6ad994ca3a6e521baf84d57f"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1569,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1569,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.791171,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b2a6d13a6ad994ca3a6e521baf84d57f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931204,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNH0.b8OdJlZHyaY0lf2EwlXPThfCt3iyxl0iG_WkOk_mTxY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b2a6d13a6ad994ca3a6e521baf84d57f","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f"},"level":"info","message":"Attempting to finish experiment","requestID":"b2a6d13a6ad994ca3a6e521baf84d57f"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"1d4e1cc0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1570,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1570,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.774258,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0dfb8f2a-e250-4655-8bec-09fb2d486467","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1d4e1cc0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/0dfb8f2a-e250-4655-8bec-09fb2d486467","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931204,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNH0.b8OdJlZHyaY0lf2EwlXPThfCt3iyxl0iG_WkOk_mTxY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1d4e1cc0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/7ebc8bfd-5a10-4fec-aafe-6a93892be856?id=53e77828-8680-44ff-b9e9-ede9d823c1fe HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.147","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"be2bdfe8b917cbae6c172c7611d296e7"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"53e77828-8680-44ff-b9e9-ede9d823c1fe\" in room \"http://localhost/rooms/7ebc8bfd-5a10-4fec-aafe-6a93892be856\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"53e77828-8680-44ff-b9e9-ede9d823c1fe\" from room \"http://localhost/rooms/7ebc8bfd-5a10-4fec-aafe-6a93892be856\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/0dfb8f2a-e250-4655-8bec-09fb2d486467","device":"79baf2c2-5634-4799-bfe5-12dd25f0de8c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"21/Sep/2024:15:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/7ebc8bfd-5a10-4fec-aafe-6a93892be856?id=f8cfdcfe-318f-482a-ba90-e0a801ce82a3 HTTP/1.1","status": "101","body_bytes_sent":"918","request_time":"0.147","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"42cd3e53be00ddca4031ba2c87845602"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/0dfb8f2a-e250-4655-8bec-09fb2d486467' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/0dfb8f2a-e250-4655-8bec-09fb2d486467' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0dfb8f2a-e250-4655-8bec-09fb2d486467","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"f8cfdcfe-318f-482a-ba90-e0a801ce82a3\" in room \"http://localhost/rooms/7ebc8bfd-5a10-4fec-aafe-6a93892be856\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"f8cfdcfe-318f-482a-ba90-e0a801ce82a3\" from room \"http://localhost/rooms/7ebc8bfd-5a10-4fec-aafe-6a93892be856\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e749dd2014a00b252b162d56ce531882","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0dfb8f2a-e250-4655-8bec-09fb2d486467': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0dfb8f2a-e250-4655-8bec-09fb2d486467","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"e297a0a3-3de8-46f3-b9ab-33feb3c5c479","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.251381} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e749dd2014a00b252b162d56ce531882","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7d123fbf-6c33-4cbb-89c4-94e67339f00b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.251702} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8263afe1dc966edc9103ccc6a34b3b30","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8263afe1dc966edc9103ccc6a34b3b30","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/0dfb8f2a-e250-4655-8bec-09fb2d486467"}}},"level":"info","message":"received a callback","requestID":"e749dd2014a00b252b162d56ce531882"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"1d4e1cc0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/0dfb8f2a-e250-4655-8bec-09fb2d486467"}}},"level":"info","message":"received a callback","requestID":"8263afe1dc966edc9103ccc6a34b3b30"} device-1 | {"data":{"peerconnection":"0dfb8f2a-e250-4655-8bec-09fb2d486467","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"1d4e1cc0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/0dfb8f2a-e250-4655-8bec-09fb2d486467 204 33ms","method":"DELETE","requestID":"1d4e1cc0-782b-11ef-88d4-5fea3f61bb98","responseTime":33,"status":204,"url":"/peerconnections/0dfb8f2a-e250-4655-8bec-09fb2d486467"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f"},"level":"info","message":"Successfully finished experiment","requestID":"b2a6d13a6ad994ca3a6e521baf84d57f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1d5548b0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1571,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90a7df0e-bc70-4078-985d-ff988e9b9a60","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"378fe9a0-fb79-48bd-98ae-7b1939131235","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.2887738} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1571,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.411716,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1d5548b0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1d5548b0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1d5548b0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/90a7df0e-bc70-4078-985d-ff988e9b9a60/signaling 200 10ms","method":"POST","requestID":"1d5548b0-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1d571d70-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa0c6c5d9-cc08-4aa1-9461-237eede7b69f': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa0c6c5d9-cc08-4aa1-9461-237eede7b69f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"c206f523-d9e6-4ea3-a791-f871817ca3ae","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.2981207} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c6523c5f-1d08-489a-b44d-348c138ab631","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.2986088} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1572,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"b2a6d13a6ad994ca3a6e521baf84d57f","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79baf2c2-5634-4799-bfe5-12dd25f0de8c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6aa52ac3-aa52-474f-9a38-5fb0b2588780","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.3011997} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1572,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.886176,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1d571d70-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1d571d70-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1d571d70-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c/signaling 200 10ms","method":"POST","requestID":"1d571d70-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f","requestID":"b2a6d13a6ad994ca3a6e521baf84d57f"} gateway-1 | {"time_local":"21/Sep/2024:15:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.133","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b2a6d13a6ad994ca3a6e521baf84d57f"} gateway-1 | {"time_local":"21/Sep/2024:15:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1746","request_time":"2.194","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"61979e8a784b0c26d4712778ce535469"} experiment-1 | {"level":"info","message":"DELETE /experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f 204 132ms","method":"DELETE","requestID":"b2a6d13a6ad994ca3a6e521baf84d57f","responseTime":132,"status":204,"url":"/experiments/a0c6c5d9-cc08-4aa1-9461-237eede7b69f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 108ms","method":"POST","requestID":"e749dd2014a00b252b162d56ce531882","responseTime":108,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.112","http_referrer":"","http_user_agent":"node-fetch","requestID":"e749dd2014a00b252b162d56ce531882"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 107ms","method":"POST","requestID":"8263afe1dc966edc9103ccc6a34b3b30","responseTime":107,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.111","http_referrer":"","http_user_agent":"node-fetch","requestID":"8263afe1dc966edc9103ccc6a34b3b30"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNH0.b8OdJlZHyaY0lf2EwlXPThfCt3iyxl0iG_WkOk_mTxY","level":"info","message":"auth send jwt","requestID":"9173685030996b27f44fd500156ceec3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9173685030996b27f44fd500156ceec3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9173685030996b27f44fd500156ceec3"} gateway-1 | {"time_local":"21/Sep/2024:15:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2067","request_time":"0.684","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2c5a11044eec91a41593f7356d312436"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1573,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1573,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.92328,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"9173685030996b27f44fd500156ceec3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931204,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNH0.b8OdJlZHyaY0lf2EwlXPThfCt3iyxl0iG_WkOk_mTxY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9173685030996b27f44fd500156ceec3","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/90a7df0e-bc70-4078-985d-ff988e9b9a60' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69f381fd-c955-4c7f-9752-40945dfc1840","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3b58602c-3e56-47a3-a087-9bf23139730c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.3897233} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9173685030996b27f44fd500156ceec3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/79baf2c2-5634-4799-bfe5-12dd25f0de8c' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"71d2736a-8b97-4c97-a903-890a168f647d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.3947265} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"9173685030996b27f44fd500156ceec3","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69f381fd-c955-4c7f-9752-40945dfc1840","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"e57ad5c4-3ce8-4d85-80d4-46f7603f88a2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.4036052} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"76a6b3f7-a5bc-404c-9db9-ec9bbea24eb4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.403916} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"9173685030996b27f44fd500156ceec3","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69f381fd-c955-4c7f-9752-40945dfc1840","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69f381fd-c955-4c7f-9752-40945dfc1840","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:44.403557741Z"}]},"request_id":"b7aa5bfb-731c-4181-969f-c9d40b8ddb8a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.4074583} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"9173685030996b27f44fd500156ceec3","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9173685030996b27f44fd500156ceec3"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"9173685030996b27f44fd500156ceec3","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9173685030996b27f44fd500156ceec3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNH0.b8OdJlZHyaY0lf2EwlXPThfCt3iyxl0iG_WkOk_mTxY","level":"info","message":"auth send jwt","requestID":"30223f01994ccb4bfc5c5629e93332f3"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"30223f01994ccb4bfc5c5629e93332f3","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"30223f01994ccb4bfc5c5629e93332f3"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1574,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1574,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.65665,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"30223f01994ccb4bfc5c5629e93332f3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931204,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNH0.b8OdJlZHyaY0lf2EwlXPThfCt3iyxl0iG_WkOk_mTxY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"30223f01994ccb4bfc5c5629e93332f3","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed0d5f47-68f6-47a8-8f11-5607bc62661a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"fcfa3c65-6411-4b56-9d71-38045b7ca9d9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.4354815} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"30223f01994ccb4bfc5c5629e93332f3","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9ab53cc8-5ffa-4ba7-adc4-d1fb3b021264","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.4393957} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"30223f01994ccb4bfc5c5629e93332f3","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed0d5f47-68f6-47a8-8f11-5607bc62661a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"e28719c4-e21b-4868-9bd3-34ccc7848fdf","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.449406} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ac01f788-1215-47b6-89d5-3616ca27ace4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.4495184} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"30223f01994ccb4bfc5c5629e93332f3","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed0d5f47-68f6-47a8-8f11-5607bc62661a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed0d5f47-68f6-47a8-8f11-5607bc62661a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:44.449361310Z"}]},"request_id":"955f4240-f390-475b-9f95-2b7c9c2d0761","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.4530482} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"30223f01994ccb4bfc5c5629e93332f3","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"30223f01994ccb4bfc5c5629e93332f3"} gateway-1 | {"time_local":"21/Sep/2024:15:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"30223f01994ccb4bfc5c5629e93332f3"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"30223f01994ccb4bfc5c5629e93332f3","responseTime":40,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNH0.b8OdJlZHyaY0lf2EwlXPThfCt3iyxl0iG_WkOk_mTxY","level":"info","message":"auth send jwt","requestID":"963c7568872feeb1e75aed0fa8ffa917"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"963c7568872feeb1e75aed0fa8ffa917","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNH0.b8OdJlZHyaY0lf2EwlXPThfCt3iyxl0iG_WkOk_mTxY","level":"info","message":"auth send jwt","requestID":"f30935927ee882e9f5209c42decbf8a4"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f30935927ee882e9f5209c42decbf8a4","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"963c7568872feeb1e75aed0fa8ffa917"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f30935927ee882e9f5209c42decbf8a4"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1575,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1575,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.218907,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"963c7568872feeb1e75aed0fa8ffa917","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931204,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNH0.b8OdJlZHyaY0lf2EwlXPThfCt3iyxl0iG_WkOk_mTxY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"963c7568872feeb1e75aed0fa8ffa917","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1576,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1576,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.524652,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f30935927ee882e9f5209c42decbf8a4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931204,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNH0.b8OdJlZHyaY0lf2EwlXPThfCt3iyxl0iG_WkOk_mTxY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f30935927ee882e9f5209c42decbf8a4","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69f381fd-c955-4c7f-9752-40945dfc1840","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69f381fd-c955-4c7f-9752-40945dfc1840","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:44.403557741Z"}]},"request_id":"772b4317-872d-485f-9388-71c89b3c7742","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.9283497} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"963c7568872feeb1e75aed0fa8ffa917","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed0d5f47-68f6-47a8-8f11-5607bc62661a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed0d5f47-68f6-47a8-8f11-5607bc62661a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:44.449361310Z"}]},"request_id":"a9dd0e04-00bc-4c7e-b7ed-de3c2ff51fe9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.9289274} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f30935927ee882e9f5209c42decbf8a4","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f16f0b81-b2e6-4f35-b797-007c23adfda4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.932282} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"963c7568872feeb1e75aed0fa8ffa917","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3ad98dfa-9421-4594-886f-b28e0059ca77","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.9336245} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"f30935927ee882e9f5209c42decbf8a4","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed0d5f47-68f6-47a8-8f11-5607bc62661a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed0d5f47-68f6-47a8-8f11-5607bc62661a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:44.449361310Z"}]},"request_id":"d9ede72b-938b-42cd-bdb9-defc484469c4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.9364424} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f30935927ee882e9f5209c42decbf8a4","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f30935927ee882e9f5209c42decbf8a4"} device-1 | {"level":"info","message":"PATCH /devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a 200 21ms","method":"PATCH","requestID":"f30935927ee882e9f5209c42decbf8a4","responseTime":21,"status":200,"url":"/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a"} gateway-1 | {"time_local":"21/Sep/2024:15:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.030","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f30935927ee882e9f5209c42decbf8a4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNH0.b8OdJlZHyaY0lf2EwlXPThfCt3iyxl0iG_WkOk_mTxY","level":"info","message":"auth send jwt","requestID":"9fc3cb8111ecaa1f728f75caf3378e77"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9fc3cb8111ecaa1f728f75caf3378e77","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9fc3cb8111ecaa1f728f75caf3378e77"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1577,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1577,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.646329,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"9fc3cb8111ecaa1f728f75caf3378e77","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931204,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNH0.b8OdJlZHyaY0lf2EwlXPThfCt3iyxl0iG_WkOk_mTxY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9fc3cb8111ecaa1f728f75caf3378e77","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69f381fd-c955-4c7f-9752-40945dfc1840","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69f381fd-c955-4c7f-9752-40945dfc1840","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:44.403557741Z"}]},"request_id":"ce713f29-4b07-41cf-a41d-79ffb2bc3496","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.9476564} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"963c7568872feeb1e75aed0fa8ffa917","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"963c7568872feeb1e75aed0fa8ffa917"} device-1 | {"level":"info","message":"PATCH /devices/69f381fd-c955-4c7f-9752-40945dfc1840 200 33ms","method":"PATCH","requestID":"963c7568872feeb1e75aed0fa8ffa917","responseTime":33,"status":200,"url":"/devices/69f381fd-c955-4c7f-9752-40945dfc1840"} gateway-1 | {"time_local":"21/Sep/2024:15:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/69f381fd-c955-4c7f-9752-40945dfc1840 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"963c7568872feeb1e75aed0fa8ffa917"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNH0.b8OdJlZHyaY0lf2EwlXPThfCt3iyxl0iG_WkOk_mTxY","level":"info","message":"auth send jwt","requestID":"8fc072c11bbe86435d9c314b0f8d9425"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8fc072c11bbe86435d9c314b0f8d9425","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8fc072c11bbe86435d9c314b0f8d9425"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9fc3cb8111ecaa1f728f75caf3378e77"} gateway-1 | {"time_local":"21/Sep/2024:15:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.018","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"9fc3cb8111ecaa1f728f75caf3378e77"} device-1 | {"level":"info","message":"POST /devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a/websocket 200 15ms","method":"POST","requestID":"9fc3cb8111ecaa1f728f75caf3378e77","responseTime":15,"status":200,"url":"/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a/websocket"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1578,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1578,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.84459,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"8fc072c11bbe86435d9c314b0f8d9425","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931204,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNH0.b8OdJlZHyaY0lf2EwlXPThfCt3iyxl0iG_WkOk_mTxY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8fc072c11bbe86435d9c314b0f8d9425","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8fc072c11bbe86435d9c314b0f8d9425"} gateway-1 | {"time_local":"21/Sep/2024:15:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/69f381fd-c955-4c7f-9752-40945dfc1840/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.017","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"8fc072c11bbe86435d9c314b0f8d9425"} device-1 | {"level":"info","message":"POST /devices/69f381fd-c955-4c7f-9752-40945dfc1840/websocket 200 11ms","method":"POST","requestID":"8fc072c11bbe86435d9c314b0f8d9425","responseTime":11,"status":200,"url":"/devices/69f381fd-c955-4c7f-9752-40945dfc1840/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNH0.b8OdJlZHyaY0lf2EwlXPThfCt3iyxl0iG_WkOk_mTxY","level":"info","message":"auth send jwt","requestID":"7cc796393613eb218322099484babebd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7cc796393613eb218322099484babebd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7cc796393613eb218322099484babebd"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1579,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1579,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.655308,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"7cc796393613eb218322099484babebd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931204,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNH0.b8OdJlZHyaY0lf2EwlXPThfCt3iyxl0iG_WkOk_mTxY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7cc796393613eb218322099484babebd","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69f381fd-c955-4c7f-9752-40945dfc1840","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69f381fd-c955-4c7f-9752-40945dfc1840","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:44.403557741Z"}]},"request_id":"0a2b9488-e36a-4c78-abf1-ec2d9ea27545","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931204.993481} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7cc796393613eb218322099484babebd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7cc796393613eb218322099484babebd"} device-1 | {"level":"info","message":"GET /devices/69f381fd-c955-4c7f-9752-40945dfc1840? 200 10ms","method":"GET","requestID":"7cc796393613eb218322099484babebd","responseTime":10,"status":200,"url":"/devices/69f381fd-c955-4c7f-9752-40945dfc1840?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/69f381fd-c955-4c7f-9752-40945dfc1840? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7cc796393613eb218322099484babebd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNX0.lMaqeQNbuhr85UFqkdf1BcJYPn-3bSqwxUbDviQO5jo","level":"info","message":"auth send jwt","requestID":"24225728819241d7b85fae088eb11455"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"24225728819241d7b85fae088eb11455","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"24225728819241d7b85fae088eb11455"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1580,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1580,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.66534,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"24225728819241d7b85fae088eb11455","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931205,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNX0.lMaqeQNbuhr85UFqkdf1BcJYPn-3bSqwxUbDviQO5jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"24225728819241d7b85fae088eb11455","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed0d5f47-68f6-47a8-8f11-5607bc62661a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed0d5f47-68f6-47a8-8f11-5607bc62661a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:44.449361310Z"}]},"request_id":"64b1d506-c1b9-4c06-8e60-3d38368678fa","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.0076187} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"24225728819241d7b85fae088eb11455","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"24225728819241d7b85fae088eb11455"} gateway-1 | {"time_local":"21/Sep/2024:15:06:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"24225728819241d7b85fae088eb11455"} device-1 | {"level":"info","message":"GET /devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a? 200 9ms","method":"GET","requestID":"24225728819241d7b85fae088eb11455","responseTime":9,"status":200,"url":"/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNX0.lMaqeQNbuhr85UFqkdf1BcJYPn-3bSqwxUbDviQO5jo","level":"info","message":"auth send jwt","requestID":"f6232e814fedb19075720e01aadffbd4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f6232e814fedb19075720e01aadffbd4","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"f6232e814fedb19075720e01aadffbd4"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1581,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1581,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.669045,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f6232e814fedb19075720e01aadffbd4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931205,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNX0.lMaqeQNbuhr85UFqkdf1BcJYPn-3bSqwxUbDviQO5jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f6232e814fedb19075720e01aadffbd4","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6"},"level":"info","message":"Attempting to run experiment","requestID":"f6232e814fedb19075720e01aadffbd4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6"},"level":"info","message":"Attempting to book experiment","requestID":"f6232e814fedb19075720e01aadffbd4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6"},"level":"info","message":"Successfully booked experiment","requestID":"f6232e814fedb19075720e01aadffbd4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1dca51a0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1dca78b0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1582,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1582,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.634137,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1583,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1dca51a0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931205,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNX0.lMaqeQNbuhr85UFqkdf1BcJYPn-3bSqwxUbDviQO5jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1dca51a0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1583,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.480312,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1dca78b0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931205,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNX0.lMaqeQNbuhr85UFqkdf1BcJYPn-3bSqwxUbDviQO5jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1dca78b0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69f381fd-c955-4c7f-9752-40945dfc1840","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69f381fd-c955-4c7f-9752-40945dfc1840","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:44.403557741Z"}]},"request_id":"a8c5e722-1560-4b75-ba31-f82ffad35961","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.058414} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1dca51a0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed0d5f47-68f6-47a8-8f11-5607bc62661a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed0d5f47-68f6-47a8-8f11-5607bc62661a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:44.449361310Z"}]},"request_id":"e65b0f95-2af8-43a6-8045-94fc2d7fa50b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.059375} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1dca78b0-782b-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1dca51a0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/69f381fd-c955-4c7f-9752-40945dfc1840? 200 13ms","method":"GET","requestID":"1dca51a0-782b-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/69f381fd-c955-4c7f-9752-40945dfc1840?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1dca78b0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a? 200 13ms","method":"GET","requestID":"1dca78b0-782b-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6"},"level":"info","message":"Setting up experiment","requestID":"f6232e814fedb19075720e01aadffbd4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"f6232e814fedb19075720e01aadffbd4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6"},"level":"info","message":"Successfully locked booking for experiment","requestID":"f6232e814fedb19075720e01aadffbd4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"f6232e814fedb19075720e01aadffbd4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"f6232e814fedb19075720e01aadffbd4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6"},"level":"info","message":"Attempting to update booking for experiment","requestID":"f6232e814fedb19075720e01aadffbd4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6"},"level":"info","message":"Successfully updated booking for experiment","requestID":"f6232e814fedb19075720e01aadffbd4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6"},"level":"info","message":"Successfully set up experiment","requestID":"f6232e814fedb19075720e01aadffbd4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1dd415a0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1dd463c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1dd4b1e0-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6"},"level":"info","message":"Successfully running experiment","requestID":"f6232e814fedb19075720e01aadffbd4"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1584,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1585,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1584,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.967593,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1585,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.526386,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"client_addr":"127.0.0.1:43866","level":"info","msg":"Received request.","req_id":1586,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1dd415a0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931205,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNX0.lMaqeQNbuhr85UFqkdf1BcJYPn-3bSqwxUbDviQO5jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1dd415a0-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1dd463c0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931205,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNX0.lMaqeQNbuhr85UFqkdf1BcJYPn-3bSqwxUbDviQO5jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1dd463c0-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43866","level":"info","msg":"Sent response.","req_id":1586,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.737648,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69f381fd-c955-4c7f-9752-40945dfc1840","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7eb16d4e-8ed7-4cde-9fa9-9e8a56e036fa","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.1248043} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1dd4b1e0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"1dd4b1e0-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69f381fd-c955-4c7f-9752-40945dfc1840","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69f381fd-c955-4c7f-9752-40945dfc1840","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:44.403557741Z"}]},"request_id":"d13b94cc-75d9-4107-900e-5a4e67d40bf6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.1292543} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"1dd415a0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1dd4b1e0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed0d5f47-68f6-47a8-8f11-5607bc62661a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed0d5f47-68f6-47a8-8f11-5607bc62661a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:44.449361310Z"}]},"request_id":"b6a98076-1b5f-49ae-92d6-9c0f8108d3d2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.1324685} device-1 | {"level":"info","message":"POST /devices/69f381fd-c955-4c7f-9752-40945dfc1840/signaling 200 15ms","method":"POST","requestID":"1dd4b1e0-782b-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/69f381fd-c955-4c7f-9752-40945dfc1840/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1dd463c0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1dd7bf20-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"d74e00ba-2587-41e4-902b-7768de0a55f2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.1389263} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"96805d51-a9c0-4a7d-9ca7-d87fe75aa051","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.1392355} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1dd415a0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/69f381fd-c955-4c7f-9752-40945dfc1840? 200 27ms","method":"GET","requestID":"1dd415a0-782b-11ef-88d4-5fea3f61bb98","responseTime":27,"status":200,"url":"/devices/69f381fd-c955-4c7f-9752-40945dfc1840?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"f6232e814fedb19075720e01aadffbd4","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1587,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:45Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1dd463c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a? 200 26ms","method":"GET","requestID":"1dd463c0-782b-11ef-88d4-5fea3f61bb98","responseTime":26,"status":200,"url":"/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a?"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed0d5f47-68f6-47a8-8f11-5607bc62661a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ffc4ce9d-bfa7-4674-b7f9-c97974813c3e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.1439016} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1587,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.319172,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1dd7bf20-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1dd7bf20-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1dd993e0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1dd7bf20-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a/signaling 200 14ms","method":"POST","requestID":"1dd7bf20-782b-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1588,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:45Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"f6232e814fedb19075720e01aadffbd4"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69f381fd-c955-4c7f-9752-40945dfc1840","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2eb900c7-d3cd-46f5-a36f-af9e80840214","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.1555536} experiment-1 | {"level":"info","message":"POST /experiments? 201 139ms","method":"POST","requestID":"f6232e814fedb19075720e01aadffbd4","responseTime":139,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1588,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.744186,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1dd993e0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} gateway-1 | {"time_local":"21/Sep/2024:15:06:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1220","request_time":"0.143","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f6232e814fedb19075720e01aadffbd4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1dd993e0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNX0.lMaqeQNbuhr85UFqkdf1BcJYPn-3bSqwxUbDviQO5jo","level":"info","message":"auth send jwt","requestID":"9a12fd5974cc1e547cff0af89b99a9ad"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1dd993e0-782b-11ef-88d4-5fea3f61bb98"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9a12fd5974cc1e547cff0af89b99a9ad","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/69f381fd-c955-4c7f-9752-40945dfc1840/signaling 200 10ms","method":"POST","requestID":"1dd993e0-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/69f381fd-c955-4c7f-9752-40945dfc1840/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9a12fd5974cc1e547cff0af89b99a9ad"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1ddb8fb0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1589,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1589,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.876635,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1590,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"9a12fd5974cc1e547cff0af89b99a9ad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931205,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNX0.lMaqeQNbuhr85UFqkdf1BcJYPn-3bSqwxUbDviQO5jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9a12fd5974cc1e547cff0af89b99a9ad","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed0d5f47-68f6-47a8-8f11-5607bc62661a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0a380a8b-0f98-4b89-856c-323cd8a13389","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.167273} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1590,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.91076,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1ddb8fb0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1ddb8fb0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69f381fd-c955-4c7f-9752-40945dfc1840","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69f381fd-c955-4c7f-9752-40945dfc1840","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:44.403557741Z"}]},"request_id":"73f6740e-6ed8-43ee-9a6c-ee87373ac73f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.1697867} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9a12fd5974cc1e547cff0af89b99a9ad","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1ddb8fb0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a/signaling 200 12ms","method":"POST","requestID":"1ddb8fb0-782b-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9a12fd5974cc1e547cff0af89b99a9ad"} device-1 | {"level":"info","message":"GET /devices/69f381fd-c955-4c7f-9752-40945dfc1840? 200 15ms","method":"GET","requestID":"9a12fd5974cc1e547cff0af89b99a9ad","responseTime":15,"status":200,"url":"/devices/69f381fd-c955-4c7f-9752-40945dfc1840?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/69f381fd-c955-4c7f-9752-40945dfc1840? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9a12fd5974cc1e547cff0af89b99a9ad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"f6232e814fedb19075720e01aadffbd4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1dddb290-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1dddd9a0-782b-11ef-88d4-5fea3f61bb98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNX0.lMaqeQNbuhr85UFqkdf1BcJYPn-3bSqwxUbDviQO5jo","level":"info","message":"auth send jwt","requestID":"08ab11f306b6b86ac55902f4e3f7f896"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"08ab11f306b6b86ac55902f4e3f7f896","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1591,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1591,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.76524,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:45Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"08ab11f306b6b86ac55902f4e3f7f896"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1592,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1dddb290-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931205,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNX0.lMaqeQNbuhr85UFqkdf1BcJYPn-3bSqwxUbDviQO5jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1dddb290-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1592,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.735383,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1dddd9a0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931205,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNX0.lMaqeQNbuhr85UFqkdf1BcJYPn-3bSqwxUbDviQO5jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1dddd9a0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1593,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1593,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.383638,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"08ab11f306b6b86ac55902f4e3f7f896","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931205,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNX0.lMaqeQNbuhr85UFqkdf1BcJYPn-3bSqwxUbDviQO5jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"08ab11f306b6b86ac55902f4e3f7f896","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69f381fd-c955-4c7f-9752-40945dfc1840","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69f381fd-c955-4c7f-9752-40945dfc1840","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:44.403557741Z"}]},"request_id":"69a57f03-ba3f-4d44-8fd0-a8bc6467fefb","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.1853368} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed0d5f47-68f6-47a8-8f11-5607bc62661a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed0d5f47-68f6-47a8-8f11-5607bc62661a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:44.449361310Z"}]},"request_id":"031e7796-9447-4ee5-b67f-d6f46536303a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.186011} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1dddb290-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1dddd9a0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed0d5f47-68f6-47a8-8f11-5607bc62661a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed0d5f47-68f6-47a8-8f11-5607bc62661a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:44.449361310Z"}]},"request_id":"ae7d90b0-fefa-4cd7-afe4-161c1d1ca794","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.189393} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"08ab11f306b6b86ac55902f4e3f7f896","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1dddb290-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/69f381fd-c955-4c7f-9752-40945dfc1840? 200 16ms","method":"GET","requestID":"1dddb290-782b-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/69f381fd-c955-4c7f-9752-40945dfc1840?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1dddd9a0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a? 200 16ms","method":"GET","requestID":"1dddd9a0-782b-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6"},"level":"info","message":"Building connection plan","requestID":"f6232e814fedb19075720e01aadffbd4"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"6738e19e-9aea-453c-aff4-17b143c26b76"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"e72f57b3-4bec-4b7d-9dda-544b29e69066"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"42de5d0d-da9e-410f-8d95-6c8aa14630d7"}]},"level":"info","message":"Built pairwise service configurations","requestID":"f6232e814fedb19075720e01aadffbd4"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"08ab11f306b6b86ac55902f4e3f7f896"} device-1 | {"level":"info","message":"GET /devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a? 200 16ms","method":"GET","requestID":"08ab11f306b6b86ac55902f4e3f7f896","responseTime":16,"status":200,"url":"/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"08ab11f306b6b86ac55902f4e3f7f896"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"1de0bfd0-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"1de0bfd0-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"1de0bfd0-782b-11ef-938d-0b888d58857d","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/9596ef0f-6415-49a3-b047-318a2055e0a7?id=927b8a93-d5e2-4850-97fd-28be5ad560b8","ws://localhost/rooms/9596ef0f-6415-49a3-b047-318a2055e0a7?id=b74f15e9-db80-4f63-9b36-294f1f6a24c1"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"f6232e814fedb19075720e01aadffbd4"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"1de13500-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1594,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1594,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.013069,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1de13500-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931205,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNX0.lMaqeQNbuhr85UFqkdf1BcJYPn-3bSqwxUbDviQO5jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1de13500-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"fa97973a-28a9-4500-9d62-0af05d6490c0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.2123077} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"92ab8247-15af-48fd-8ae3-2ff6d4cc6a78","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.2126658} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1de13500-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"1de13500-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"1de13500-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/4fe6fdec-43b6-4d82-837b-d63ce784db1a'","requestID":"1de13500-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/4fe6fdec-43b6-4d82-837b-d63ce784db1a'","requestID":"1de13500-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"1de13500-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 26ms","method":"POST","requestID":"1de13500-782b-11ef-88d4-5fea3f61bb98","responseTime":26,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"1de13500-782b-11ef-88d4-5fea3f61bb98"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"1de6b340-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"927b8a93-d5e2-4850-97fd-28be5ad560b8\" in room \"http://localhost/rooms/9596ef0f-6415-49a3-b047-318a2055e0a7\"","requestID":"1de6b340-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"1de6b340-782b-11ef-938d-0b888d58857d"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/4fe6fdec-43b6-4d82-837b-d63ce784db1a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4fe6fdec-43b6-4d82-837b-d63ce784db1a","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"1de6da50-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b74f15e9-db80-4f63-9b36-294f1f6a24c1\" in room \"http://localhost/rooms/9596ef0f-6415-49a3-b047-318a2055e0a7\"","requestID":"1de6da50-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"1de6da50-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"927b8a93-d5e2-4850-97fd-28be5ad560b8\" in room \"http://localhost/rooms/9596ef0f-6415-49a3-b047-318a2055e0a7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"927b8a93-d5e2-4850-97fd-28be5ad560b8\" in room \"http://localhost/rooms/9596ef0f-6415-49a3-b047-318a2055e0a7\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"53e2f740b80350adb6d8b5373f28c0d3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"53e2f740b80350adb6d8b5373f28c0d3","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/4fe6fdec-43b6-4d82-837b-d63ce784db1a"}}},"level":"info","message":"received a callback","requestID":"53e2f740b80350adb6d8b5373f28c0d3"} device-1 | {"data":{"peerconnection":"4fe6fdec-43b6-4d82-837b-d63ce784db1a","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"53e2f740b80350adb6d8b5373f28c0d3","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"53e2f740b80350adb6d8b5373f28c0d3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"f6232e814fedb19075720e01aadffbd4"} device-1 | {"data":{"peerconnection":"4fe6fdec-43b6-4d82-837b-d63ce784db1a","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1deaf900-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1595,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69f381fd-c955-4c7f-9752-40945dfc1840","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"11af33cc-24c8-491b-a420-c7d5ea065f86","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.2677114} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1595,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.16374,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1deaf900-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1deaf900-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/4fe6fdec-43b6-4d82-837b-d63ce784db1a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4fe6fdec-43b6-4d82-837b-d63ce784db1a","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1deaf900-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/69f381fd-c955-4c7f-9752-40945dfc1840/signaling 200 13ms","method":"POST","requestID":"1deaf900-782b-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/69f381fd-c955-4c7f-9752-40945dfc1840/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bcf5a5f2f607b3763d3aaa743367dc69","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"bcf5a5f2f607b3763d3aaa743367dc69","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1ded42f0-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/4fe6fdec-43b6-4d82-837b-d63ce784db1a"}}},"level":"info","message":"received a callback","requestID":"bcf5a5f2f607b3763d3aaa743367dc69"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1596,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed0d5f47-68f6-47a8-8f11-5607bc62661a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c16aba9f-d620-4fcb-b0ce-b40cdd925c0e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.283555} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"1deddf30-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1596,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.378375,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1ded42f0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1ded42f0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1597,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:45Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1ded42f0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a/signaling 200 9ms","method":"POST","requestID":"1ded42f0-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4fe6fdec-43b6-4d82-837b-d63ce784db1a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4924a18d-6b8e-432b-9497-8e37d6a401da","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.288398} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1597,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.504445,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4fe6fdec-43b6-4d82-837b-d63ce784db1a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1deddf30-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/4fe6fdec-43b6-4d82-837b-d63ce784db1a","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1deddf30-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"1deddf30-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/4fe6fdec-43b6-4d82-837b-d63ce784db1a 200 9ms","method":"GET","requestID":"1deddf30-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/peerconnections/4fe6fdec-43b6-4d82-837b-d63ce784db1a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 28ms","method":"POST","requestID":"bcf5a5f2f607b3763d3aaa743367dc69","responseTime":28,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.031","http_referrer":"","http_user_agent":"node-fetch","requestID":"bcf5a5f2f607b3763d3aaa743367dc69"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1df188b0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1598,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed0d5f47-68f6-47a8-8f11-5607bc62661a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8802c591-9209-429b-8bd1-d7d61a79d656","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.3119812} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1598,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.630936,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1df188b0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1df188b0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1df188b0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a/signaling 200 8ms","method":"POST","requestID":"1df188b0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1df30f50-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1599,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69f381fd-c955-4c7f-9752-40945dfc1840","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6ed09543-c2c2-4d17-97fd-f67afb05a1ec","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.3213665} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1599,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.335361,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1df30f50-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1df30f50-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1df30f50-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/69f381fd-c955-4c7f-9752-40945dfc1840/signaling 200 8ms","method":"POST","requestID":"1df30f50-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/69f381fd-c955-4c7f-9752-40945dfc1840/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNX0.lMaqeQNbuhr85UFqkdf1BcJYPn-3bSqwxUbDviQO5jo","level":"info","message":"auth send jwt","requestID":"1857a3b70c0fc716fc4cef7c60f2e304"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1857a3b70c0fc716fc4cef7c60f2e304","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6","requestID":"1857a3b70c0fc716fc4cef7c60f2e304"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1600,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1600,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.765965,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1857a3b70c0fc716fc4cef7c60f2e304","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931205,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNX0.lMaqeQNbuhr85UFqkdf1BcJYPn-3bSqwxUbDviQO5jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"1857a3b70c0fc716fc4cef7c60f2e304","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6","requestID":"1857a3b70c0fc716fc4cef7c60f2e304"} gateway-1 | {"time_local":"21/Sep/2024:15:06:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6 HTTP/1.1","status": "200","body_bytes_sent":"1293","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1857a3b70c0fc716fc4cef7c60f2e304"} experiment-1 | {"level":"info","message":"GET /experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6 200 9ms","method":"GET","requestID":"1857a3b70c0fc716fc4cef7c60f2e304","responseTime":9,"status":200,"url":"/experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNX0.lMaqeQNbuhr85UFqkdf1BcJYPn-3bSqwxUbDviQO5jo","level":"info","message":"auth send jwt","requestID":"0e703d5b0a519c80b142ae4451d7a053"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0e703d5b0a519c80b142ae4451d7a053","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6","requestID":"0e703d5b0a519c80b142ae4451d7a053"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1601,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1601,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.625741,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0e703d5b0a519c80b142ae4451d7a053","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931205,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNX0.lMaqeQNbuhr85UFqkdf1BcJYPn-3bSqwxUbDviQO5jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0e703d5b0a519c80b142ae4451d7a053","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6"},"level":"info","message":"Attempting to finish experiment","requestID":"0e703d5b0a519c80b142ae4451d7a053"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"1dfa6250-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1602,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1602,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.928564,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4fe6fdec-43b6-4d82-837b-d63ce784db1a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1dfa6250-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/4fe6fdec-43b6-4d82-837b-d63ce784db1a","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931205,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNX0.lMaqeQNbuhr85UFqkdf1BcJYPn-3bSqwxUbDviQO5jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1dfa6250-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:06:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/9596ef0f-6415-49a3-b047-318a2055e0a7?id=927b8a93-d5e2-4850-97fd-28be5ad560b8 HTTP/1.1","status": "101","body_bytes_sent":"458","request_time":"0.142","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"85341cb9f80e695a7bf78f145d61f523"} gateway-1 | {"time_local":"21/Sep/2024:15:06:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/9596ef0f-6415-49a3-b047-318a2055e0a7?id=b74f15e9-db80-4f63-9b36-294f1f6a24c1 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.142","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"7cfe6873f3d29df32a9c3411a3e44ab3"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"927b8a93-d5e2-4850-97fd-28be5ad560b8\" in room \"http://localhost/rooms/9596ef0f-6415-49a3-b047-318a2055e0a7\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"927b8a93-d5e2-4850-97fd-28be5ad560b8\" from room \"http://localhost/rooms/9596ef0f-6415-49a3-b047-318a2055e0a7\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"b74f15e9-db80-4f63-9b36-294f1f6a24c1\" in room \"http://localhost/rooms/9596ef0f-6415-49a3-b047-318a2055e0a7\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"b74f15e9-db80-4f63-9b36-294f1f6a24c1\" from room \"http://localhost/rooms/9596ef0f-6415-49a3-b047-318a2055e0a7\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/4fe6fdec-43b6-4d82-837b-d63ce784db1a' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/4fe6fdec-43b6-4d82-837b-d63ce784db1a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4fe6fdec-43b6-4d82-837b-d63ce784db1a","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"47eef5d16d3e9e419ace19fe79c41624","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4fe6fdec-43b6-4d82-837b-d63ce784db1a': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4fe6fdec-43b6-4d82-837b-d63ce784db1a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"0ff348c1-9ce5-47d9-aaa9-b1659b4bb4e0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.38157} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"47eef5d16d3e9e419ace19fe79c41624","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8d4d2193cc77b094aad28a9059215b02","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"8d4d2193cc77b094aad28a9059215b02","responseTime":0,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1bf598bb-2035-41f5-864b-4cf9ff60271c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.3819005} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/4fe6fdec-43b6-4d82-837b-d63ce784db1a"}}},"level":"info","message":"received a callback","requestID":"47eef5d16d3e9e419ace19fe79c41624"} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"1dfa6250-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/4fe6fdec-43b6-4d82-837b-d63ce784db1a"}}},"level":"info","message":"received a callback","requestID":"8d4d2193cc77b094aad28a9059215b02"} device-1 | {"data":{"peerconnection":"4fe6fdec-43b6-4d82-837b-d63ce784db1a","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"1dfa6250-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/4fe6fdec-43b6-4d82-837b-d63ce784db1a 204 36ms","method":"DELETE","requestID":"1dfa6250-782b-11ef-88d4-5fea3f61bb98","responseTime":36,"status":204,"url":"/peerconnections/4fe6fdec-43b6-4d82-837b-d63ce784db1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6"},"level":"info","message":"Successfully finished experiment","requestID":"0e703d5b0a519c80b142ae4451d7a053"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1e02c6c0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1603,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed0d5f47-68f6-47a8-8f11-5607bc62661a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8a298c2a-d69e-44d4-8ef7-7b6ee6349ff0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.4248798} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1603,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.419215,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1e02c6c0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1e02c6c0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1e02c6c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a/signaling 200 10ms","method":"POST","requestID":"1e02c6c0-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"da0edac0-7340-4faa-b82c-2d50bda5ca31","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.4307225} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e1c2b150-0033-4a12-b67f-9d99bc210515","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.4310348} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"0e703d5b0a519c80b142ae4451d7a053","responseTime":13,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1e049b80-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1604,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69f381fd-c955-4c7f-9752-40945dfc1840","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"60064a2c-5552-4ae5-bc0c-672116df9ccf","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.437559} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1604,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.493135,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1e049b80-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1e049b80-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1e049b80-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/69f381fd-c955-4c7f-9752-40945dfc1840/signaling 200 10ms","method":"POST","requestID":"1e049b80-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/69f381fd-c955-4c7f-9752-40945dfc1840/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6","requestID":"0e703d5b0a519c80b142ae4451d7a053"} gateway-1 | {"time_local":"21/Sep/2024:15:06:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.140","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0e703d5b0a519c80b142ae4451d7a053"} gateway-1 | {"time_local":"21/Sep/2024:15:06:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2068","request_time":"0.535","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"ce11c655af6e7a2f8b3701d093181b8c"} experiment-1 | {"level":"info","message":"DELETE /experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6 204 139ms","method":"DELETE","requestID":"0e703d5b0a519c80b142ae4451d7a053","responseTime":139,"status":204,"url":"/experiments/8e37d22a-1510-4f3e-8fdc-3f25b97dcbf6"} gateway-1 | {"time_local":"21/Sep/2024:15:06:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2069","request_time":"0.525","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"4f10d719ebb0e81dbfdc729c6182b6c4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 116ms","method":"POST","requestID":"47eef5d16d3e9e419ace19fe79c41624","responseTime":116,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.118","http_referrer":"","http_user_agent":"node-fetch","requestID":"47eef5d16d3e9e419ace19fe79c41624"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 115ms","method":"POST","requestID":"8d4d2193cc77b094aad28a9059215b02","responseTime":115,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.119","http_referrer":"","http_user_agent":"node-fetch","requestID":"8d4d2193cc77b094aad28a9059215b02"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNX0.lMaqeQNbuhr85UFqkdf1BcJYPn-3bSqwxUbDviQO5jo","level":"info","message":"auth send jwt","requestID":"a04aaee7d1b2f36bc49b2d0f529ae049"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a04aaee7d1b2f36bc49b2d0f529ae049","responseTime":4,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/69f381fd-c955-4c7f-9752-40945dfc1840' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"a04aaee7d1b2f36bc49b2d0f529ae049"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1605,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1605,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.981108,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a04aaee7d1b2f36bc49b2d0f529ae049","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931205,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNX0.lMaqeQNbuhr85UFqkdf1BcJYPn-3bSqwxUbDviQO5jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a04aaee7d1b2f36bc49b2d0f529ae049","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/ed0d5f47-68f6-47a8-8f11-5607bc62661a' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9713a7d4-587f-4045-bb05-e24c64a96986","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.5309083} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a04aaee7d1b2f36bc49b2d0f529ae049","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"54ee98d2-ec69-43f2-9940-37f6115cda85","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.5364153} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"a04aaee7d1b2f36bc49b2d0f529ae049","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"559ac4a0-68d3-4a89-9ced-cf44bfb84be0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.546822} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1cefe49d-3db5-484d-a573-907be17001e3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.5468855} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"a04aaee7d1b2f36bc49b2d0f529ae049","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:45.546770295Z"}]},"request_id":"00111c55-5ccf-481d-8023-bf29527a720d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.5514283} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a04aaee7d1b2f36bc49b2d0f529ae049","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a04aaee7d1b2f36bc49b2d0f529ae049"} gateway-1 | {"time_local":"21/Sep/2024:15:06:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a04aaee7d1b2f36bc49b2d0f529ae049"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"a04aaee7d1b2f36bc49b2d0f529ae049","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNX0.lMaqeQNbuhr85UFqkdf1BcJYPn-3bSqwxUbDviQO5jo","level":"info","message":"auth send jwt","requestID":"08429b5b20fdc48bf412cd337856cb2d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"08429b5b20fdc48bf412cd337856cb2d","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"08429b5b20fdc48bf412cd337856cb2d"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1606,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1606,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.937628,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"08429b5b20fdc48bf412cd337856cb2d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931205,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNX0.lMaqeQNbuhr85UFqkdf1BcJYPn-3bSqwxUbDviQO5jo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"08429b5b20fdc48bf412cd337856cb2d","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddbd6785-92c4-4f3b-bc97-aaebadaab03d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"defbc17c-4ae4-480a-94f2-d4945f4621c3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.5834894} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"08429b5b20fdc48bf412cd337856cb2d","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ae539ba4-3716-4b92-bca6-53f81e232c5a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.5891635} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"08429b5b20fdc48bf412cd337856cb2d","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddbd6785-92c4-4f3b-bc97-aaebadaab03d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"f13fe9e0-0610-4356-8d6c-75682bc29c5d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.6059625} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"78427e54-ffd3-41de-9212-7121e54f5b3a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.6062424} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"08429b5b20fdc48bf412cd337856cb2d","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddbd6785-92c4-4f3b-bc97-aaebadaab03d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddbd6785-92c4-4f3b-bc97-aaebadaab03d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:45.605929029Z"}]},"request_id":"f43dc05b-e8d0-4962-a394-e75c9c680ded","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931205.6107178} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"08429b5b20fdc48bf412cd337856cb2d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"08429b5b20fdc48bf412cd337856cb2d"} device-1 | {"level":"info","message":"POST /devices? 201 54ms","method":"POST","requestID":"08429b5b20fdc48bf412cd337856cb2d","responseTime":54,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"08429b5b20fdc48bf412cd337856cb2d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM","level":"info","message":"auth send jwt","requestID":"89d47c219f7911c3f06b7ec409918ea0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"89d47c219f7911c3f06b7ec409918ea0","responseTime":3,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM","level":"info","message":"auth send jwt","requestID":"b96a2259e68b49cdfd5354f1f75f3016"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b96a2259e68b49cdfd5354f1f75f3016","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"89d47c219f7911c3f06b7ec409918ea0"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b96a2259e68b49cdfd5354f1f75f3016"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1607,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1607,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.640716,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"89d47c219f7911c3f06b7ec409918ea0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931206,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"89d47c219f7911c3f06b7ec409918ea0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1608,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1608,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.864675,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"b96a2259e68b49cdfd5354f1f75f3016","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931206,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b96a2259e68b49cdfd5354f1f75f3016","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddbd6785-92c4-4f3b-bc97-aaebadaab03d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddbd6785-92c4-4f3b-bc97-aaebadaab03d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:45.605929029Z"}]},"request_id":"e9be26cc-21ee-48e7-973e-e80fabb15087","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.1039186} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"89d47c219f7911c3f06b7ec409918ea0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:45.546770295Z"}]},"request_id":"4af23500-164e-4ade-b625-c004ba566d32","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.1050544} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b96a2259e68b49cdfd5354f1f75f3016","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"59549df4-90e3-439d-95ef-27b174b36ab0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.11173} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"89d47c219f7911c3f06b7ec409918ea0","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"761a1a86-51ed-478f-ba6f-c643dc9fad05","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.1143608} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"b96a2259e68b49cdfd5354f1f75f3016","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:45.546770295Z"}]},"request_id":"80d3871f-a486-4948-ba33-d2268dd399ea","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.118253} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b96a2259e68b49cdfd5354f1f75f3016","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b96a2259e68b49cdfd5354f1f75f3016"} device-1 | {"level":"info","message":"PATCH /devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3 200 27ms","method":"PATCH","requestID":"b96a2259e68b49cdfd5354f1f75f3016","responseTime":27,"status":200,"url":"/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3"} gateway-1 | {"time_local":"21/Sep/2024:15:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.033","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b96a2259e68b49cdfd5354f1f75f3016"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM","level":"info","message":"auth send jwt","requestID":"1d09f3196d0db279382b19c5eb0df0a5"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1d09f3196d0db279382b19c5eb0df0a5","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"1d09f3196d0db279382b19c5eb0df0a5"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1609,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1609,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.74604,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1d09f3196d0db279382b19c5eb0df0a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931206,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1d09f3196d0db279382b19c5eb0df0a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddbd6785-92c4-4f3b-bc97-aaebadaab03d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddbd6785-92c4-4f3b-bc97-aaebadaab03d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:45.605929029Z"}]},"request_id":"74536f85-f919-48e0-926f-1e265d57b6c2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.131526} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"89d47c219f7911c3f06b7ec409918ea0","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"89d47c219f7911c3f06b7ec409918ea0"} device-1 | {"level":"info","message":"PATCH /devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d 200 43ms","method":"PATCH","requestID":"89d47c219f7911c3f06b7ec409918ea0","responseTime":43,"status":200,"url":"/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d"} gateway-1 | {"time_local":"21/Sep/2024:15:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.048","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"89d47c219f7911c3f06b7ec409918ea0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM","level":"info","message":"auth send jwt","requestID":"0e4012eacea040903c9790eed3d40a10"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0e4012eacea040903c9790eed3d40a10","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0e4012eacea040903c9790eed3d40a10"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1610,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1610,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.297768,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"0e4012eacea040903c9790eed3d40a10","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931206,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0e4012eacea040903c9790eed3d40a10","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"1d09f3196d0db279382b19c5eb0df0a5"} gateway-1 | {"time_local":"21/Sep/2024:15:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"1d09f3196d0db279382b19c5eb0df0a5"} device-1 | {"level":"info","message":"POST /devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3/websocket 200 21ms","method":"POST","requestID":"1d09f3196d0db279382b19c5eb0df0a5","responseTime":21,"status":200,"url":"/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0e4012eacea040903c9790eed3d40a10"} gateway-1 | {"time_local":"21/Sep/2024:15:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"0e4012eacea040903c9790eed3d40a10"} device-1 | {"level":"info","message":"POST /devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d/websocket 200 22ms","method":"POST","requestID":"0e4012eacea040903c9790eed3d40a10","responseTime":22,"status":200,"url":"/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM","level":"info","message":"auth send jwt","requestID":"5bb0c6b426607f3d69947e8238fc4586"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5bb0c6b426607f3d69947e8238fc4586","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5bb0c6b426607f3d69947e8238fc4586"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1611,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1611,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.209599,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"5bb0c6b426607f3d69947e8238fc4586","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931206,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5bb0c6b426607f3d69947e8238fc4586","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:45.546770295Z"}]},"request_id":"c194c364-d0b7-4c12-b7a0-1a3138020141","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.2007275} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5bb0c6b426607f3d69947e8238fc4586","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5bb0c6b426607f3d69947e8238fc4586"} device-1 | {"level":"info","message":"GET /devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3? 200 14ms","method":"GET","requestID":"5bb0c6b426607f3d69947e8238fc4586","responseTime":14,"status":200,"url":"/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5bb0c6b426607f3d69947e8238fc4586"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM","level":"info","message":"auth send jwt","requestID":"14d09757b28dca2d5a2441f76363b1d3"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"14d09757b28dca2d5a2441f76363b1d3","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14d09757b28dca2d5a2441f76363b1d3"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1612,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1612,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.001625,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"14d09757b28dca2d5a2441f76363b1d3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931206,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"14d09757b28dca2d5a2441f76363b1d3","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddbd6785-92c4-4f3b-bc97-aaebadaab03d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddbd6785-92c4-4f3b-bc97-aaebadaab03d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:45.605929029Z"}]},"request_id":"4e1fcdd3-9fc3-489b-91cf-8d3cb94643fc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.2192423} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"14d09757b28dca2d5a2441f76363b1d3","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14d09757b28dca2d5a2441f76363b1d3"} device-1 | {"level":"info","message":"GET /devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d? 200 16ms","method":"GET","requestID":"14d09757b28dca2d5a2441f76363b1d3","responseTime":16,"status":200,"url":"/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"14d09757b28dca2d5a2441f76363b1d3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM","level":"info","message":"auth send jwt","requestID":"33e331ec9ed0509e8dc9af42c3195433"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"33e331ec9ed0509e8dc9af42c3195433","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"33e331ec9ed0509e8dc9af42c3195433"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1613,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1613,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.144059,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"33e331ec9ed0509e8dc9af42c3195433","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931206,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"33e331ec9ed0509e8dc9af42c3195433","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bcaa5031-150b-4d6e-8799-261efbed66b6"},"level":"info","message":"Attempting to run experiment","requestID":"33e331ec9ed0509e8dc9af42c3195433"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bcaa5031-150b-4d6e-8799-261efbed66b6"},"level":"info","message":"Attempting to book experiment","requestID":"33e331ec9ed0509e8dc9af42c3195433"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bcaa5031-150b-4d6e-8799-261efbed66b6"},"level":"info","message":"Successfully booked experiment","requestID":"33e331ec9ed0509e8dc9af42c3195433"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1e83dda0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1e842bc0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1614,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1614,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.124357,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1e83dda0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931206,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1e83dda0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1615,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1615,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.424638,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1e842bc0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931206,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1e842bc0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:45.546770295Z"}]},"request_id":"be2ec198-81cc-4735-b810-4f9cafbcfc8a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.277587} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1e83dda0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddbd6785-92c4-4f3b-bc97-aaebadaab03d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddbd6785-92c4-4f3b-bc97-aaebadaab03d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:45.605929029Z"}]},"request_id":"28471567-1be7-4de5-a60b-58b2e3eafda9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.2787025} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1e842bc0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1e83dda0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3? 200 19ms","method":"GET","requestID":"1e83dda0-782b-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1e842bc0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d? 200 18ms","method":"GET","requestID":"1e842bc0-782b-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bcaa5031-150b-4d6e-8799-261efbed66b6"},"level":"info","message":"Setting up experiment","requestID":"33e331ec9ed0509e8dc9af42c3195433"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bcaa5031-150b-4d6e-8799-261efbed66b6"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"33e331ec9ed0509e8dc9af42c3195433"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bcaa5031-150b-4d6e-8799-261efbed66b6"},"level":"info","message":"Successfully locked booking for experiment","requestID":"33e331ec9ed0509e8dc9af42c3195433"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bcaa5031-150b-4d6e-8799-261efbed66b6"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"33e331ec9ed0509e8dc9af42c3195433"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bcaa5031-150b-4d6e-8799-261efbed66b6"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"33e331ec9ed0509e8dc9af42c3195433"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bcaa5031-150b-4d6e-8799-261efbed66b6"},"level":"info","message":"Attempting to update booking for experiment","requestID":"33e331ec9ed0509e8dc9af42c3195433"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bcaa5031-150b-4d6e-8799-261efbed66b6"},"level":"info","message":"Successfully updated booking for experiment","requestID":"33e331ec9ed0509e8dc9af42c3195433"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bcaa5031-150b-4d6e-8799-261efbed66b6"},"level":"info","message":"Successfully set up experiment","requestID":"33e331ec9ed0509e8dc9af42c3195433"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1e8e16d0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1e8e64f0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1e8eb310-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bcaa5031-150b-4d6e-8799-261efbed66b6"},"level":"info","message":"Successfully running experiment","requestID":"33e331ec9ed0509e8dc9af42c3195433"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1616,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1617,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1616,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.527621,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1617,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.897231,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:43866","level":"info","msg":"Received request.","req_id":1618,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1e8e16d0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931206,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"1e8e16d0-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1e8e64f0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931206,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"1e8e64f0-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43866","level":"info","msg":"Sent response.","req_id":1618,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.710648,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7121003b-45fa-4859-9326-d04b780efdb6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.346185} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1e8eb310-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"1e8eb310-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:45.546770295Z"}]},"request_id":"395ee396-a345-48b7-a7e1-7cc26e01d1ea","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.3526042} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1e8eb310-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1e8e16d0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3/signaling 200 17ms","method":"POST","requestID":"1e8eb310-782b-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddbd6785-92c4-4f3b-bc97-aaebadaab03d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddbd6785-92c4-4f3b-bc97-aaebadaab03d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:45.605929029Z"}]},"request_id":"3472d9ca-653d-4eba-9487-5c44e613492d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.3542607} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"1e8e64f0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1e920e70-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1e8e16d0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3? 200 31ms","method":"GET","requestID":"1e8e16d0-782b-11ef-88d4-5fea3f61bb98","responseTime":31,"status":200,"url":"/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1e8e64f0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbcaa5031-150b-4d6e-8799-261efbed66b6#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbcaa5031-150b-4d6e-8799-261efbed66b6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"09402011-a019-4868-be4d-0ff5c2bcbb81","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.3645475} device-1 | {"level":"info","message":"GET /devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d? 200 31ms","method":"GET","requestID":"1e8e64f0-782b-11ef-88d4-5fea3f61bb98","responseTime":31,"status":200,"url":"/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1551a98e-60c4-412b-9cb5-6c2ce5f517e6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.3650765} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1619,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"33e331ec9ed0509e8dc9af42c3195433","responseTime":28,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1e939510-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddbd6785-92c4-4f3b-bc97-aaebadaab03d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5a2bcca3-d884-4925-b2c8-6373cd01261d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.3696349} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1619,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.162282,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1e920e70-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"1e920e70-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1620,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1e920e70-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d/signaling 200 18ms","method":"POST","requestID":"1e920e70-782b-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"78a75f58-2f64-49b1-8d77-052bcdad88f0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.3781576} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1620,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.601188,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/bcaa5031-150b-4d6e-8799-261efbed66b6","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"33e331ec9ed0509e8dc9af42c3195433"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1e939510-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"1e939510-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1220","request_time":"0.155","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"33e331ec9ed0509e8dc9af42c3195433"} experiment-1 | {"level":"info","message":"POST /experiments? 201 151ms","method":"POST","requestID":"33e331ec9ed0509e8dc9af42c3195433","responseTime":151,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1e939510-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3/signaling 200 16ms","method":"POST","requestID":"1e939510-782b-11ef-88d4-5fea3f61bb98","responseTime":16,"status":200,"url":"/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM","level":"info","message":"auth send jwt","requestID":"c6d4c10530a473f9b81abac2dd30c843"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c6d4c10530a473f9b81abac2dd30c843","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1e965430-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c6d4c10530a473f9b81abac2dd30c843"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1621,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1622,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1622,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.18126,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c6d4c10530a473f9b81abac2dd30c843","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931206,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c6d4c10530a473f9b81abac2dd30c843","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddbd6785-92c4-4f3b-bc97-aaebadaab03d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"565d1e00-7d2b-4824-8ddd-74f1668deefd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.3927157} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1621,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.585298,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1e965430-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1e965430-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:45.546770295Z"}]},"request_id":"1871a904-f5cf-49e5-a9f5-06d727fa6475","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.3981369} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1e965430-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c6d4c10530a473f9b81abac2dd30c843","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d/signaling 200 12ms","method":"POST","requestID":"1e965430-782b-11ef-88d4-5fea3f61bb98","responseTime":12,"status":200,"url":"/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bcaa5031-150b-4d6e-8799-261efbed66b6"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"33e331ec9ed0509e8dc9af42c3195433"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1e987710-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1e98c530-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1623,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1623,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.243838,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1e987710-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931206,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1e987710-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1624,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1624,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.933652,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1e98c530-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931206,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1e98c530-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c6d4c10530a473f9b81abac2dd30c843"} device-1 | {"level":"info","message":"GET /devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3? 200 20ms","method":"GET","requestID":"c6d4c10530a473f9b81abac2dd30c843","responseTime":20,"status":200,"url":"/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c6d4c10530a473f9b81abac2dd30c843"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:45.546770295Z"}]},"request_id":"30ce81c1-d2c5-464a-b3de-acfb0ade5126","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.4119387} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM","level":"info","message":"auth send jwt","requestID":"d1feeaebba76aaf6b11ef538c93e20ad"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d1feeaebba76aaf6b11ef538c93e20ad","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1e987710-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddbd6785-92c4-4f3b-bc97-aaebadaab03d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddbd6785-92c4-4f3b-bc97-aaebadaab03d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:45.605929029Z"}]},"request_id":"e46f6da7-1caa-4268-9d03-8719f2710d79","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.4127338} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1e98c530-782b-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d1feeaebba76aaf6b11ef538c93e20ad"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1625,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1e987710-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1625,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.992569,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} device-1 | {"level":"info","message":"GET /devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3? 200 19ms","method":"GET","requestID":"1e987710-782b-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"d1feeaebba76aaf6b11ef538c93e20ad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931206,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1e98c530-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d1feeaebba76aaf6b11ef538c93e20ad","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d? 200 18ms","method":"GET","requestID":"1e98c530-782b-11ef-88d4-5fea3f61bb98","responseTime":18,"status":200,"url":"/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bcaa5031-150b-4d6e-8799-261efbed66b6"},"level":"info","message":"Building connection plan","requestID":"33e331ec9ed0509e8dc9af42c3195433"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"4e27900a-e001-4b93-acfd-6eab8b3e72e7"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"e8dd865f-3bdd-409f-8c6a-a9daf018739a"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"ee3f60e9-0559-4694-8cf2-56f177a28260"}]},"level":"info","message":"Built pairwise service configurations","requestID":"33e331ec9ed0509e8dc9af42c3195433"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"1e9bd270-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"1e9bd270-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"1e9bd270-782b-11ef-938d-0b888d58857d","responseTime":1,"status":201,"url":"/rooms"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddbd6785-92c4-4f3b-bc97-aaebadaab03d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddbd6785-92c4-4f3b-bc97-aaebadaab03d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:45.605929029Z"}]},"request_id":"a4dd371d-90ac-4d29-a5e0-81339d39f486","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.425396} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/1d6a7384-6e4d-4f0b-beae-606a1c036dd4?id=f8cf6891-46ec-4bdd-9924-a6b34234682e","ws://localhost/rooms/1d6a7384-6e4d-4f0b-beae-606a1c036dd4?id=f652568a-e691-462a-a911-8a7b0a242fc8"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"33e331ec9ed0509e8dc9af42c3195433"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d1feeaebba76aaf6b11ef538c93e20ad","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"1e9c95c0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1626,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d1feeaebba76aaf6b11ef538c93e20ad"} device-1 | {"level":"info","message":"GET /devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d? 200 15ms","method":"GET","requestID":"d1feeaebba76aaf6b11ef538c93e20ad","responseTime":15,"status":200,"url":"/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d1feeaebba76aaf6b11ef538c93e20ad"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1626,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.672733,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1e9c95c0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931206,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1e9c95c0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"2608c472-2513-4843-94e7-49708d681d73","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.4403138} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f8d49c94-f489-4cea-ba7f-f300beac0487","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.440616} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"1e9c95c0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"1e9c95c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"1e9c95c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/324ac50f-b357-420a-be6e-f965ae06a963'","requestID":"1e9c95c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/324ac50f-b357-420a-be6e-f965ae06a963'","requestID":"1e9c95c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"1e9c95c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 26ms","method":"POST","requestID":"1e9c95c0-782b-11ef-88d4-5fea3f61bb98","responseTime":26,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"1e9c95c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/324ac50f-b357-420a-be6e-f965ae06a963' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"324ac50f-b357-420a-be6e-f965ae06a963","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"1ea21400-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f8cf6891-46ec-4bdd-9924-a6b34234682e\" in room \"http://localhost/rooms/1d6a7384-6e4d-4f0b-beae-606a1c036dd4\"","requestID":"1ea21400-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"1ea21400-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"1ea26220-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f652568a-e691-462a-a911-8a7b0a242fc8\" in room \"http://localhost/rooms/1d6a7384-6e4d-4f0b-beae-606a1c036dd4\"","requestID":"1ea26220-782b-11ef-938d-0b888d58857d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"09305cf7cca11f9144addcf6bf104906","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"1ea26220-782b-11ef-938d-0b888d58857d"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"09305cf7cca11f9144addcf6bf104906","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f652568a-e691-462a-a911-8a7b0a242fc8\" in room \"http://localhost/rooms/1d6a7384-6e4d-4f0b-beae-606a1c036dd4\"","requestID":"1ea26220-782b-11ef-938d-0b888d58857d"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f652568a-e691-462a-a911-8a7b0a242fc8\" in room \"http://localhost/rooms/1d6a7384-6e4d-4f0b-beae-606a1c036dd4\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f652568a-e691-462a-a911-8a7b0a242fc8\" in room \"http://localhost/rooms/1d6a7384-6e4d-4f0b-beae-606a1c036dd4\""} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/324ac50f-b357-420a-be6e-f965ae06a963"}}},"level":"info","message":"received a callback","requestID":"09305cf7cca11f9144addcf6bf104906"} device-1 | {"data":{"peerconnection":"324ac50f-b357-420a-be6e-f965ae06a963","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"09305cf7cca11f9144addcf6bf104906","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"09305cf7cca11f9144addcf6bf104906"} device-1 | {"data":{"peerconnection":"324ac50f-b357-420a-be6e-f965ae06a963","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bcaa5031-150b-4d6e-8799-261efbed66b6"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"33e331ec9ed0509e8dc9af42c3195433"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1ea6cef0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1627,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/324ac50f-b357-420a-be6e-f965ae06a963' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"324ac50f-b357-420a-be6e-f965ae06a963","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"92c807d5-3862-47f1-afe6-d54cc82c795b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.499567} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1627,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.473822,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"321c40cb555e1b89bbc6a548b9c23bd8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1ea6cef0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"321c40cb555e1b89bbc6a548b9c23bd8","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1ea6cef0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/324ac50f-b357-420a-be6e-f965ae06a963"}}},"level":"info","message":"received a callback","requestID":"321c40cb555e1b89bbc6a548b9c23bd8"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"1ea96700-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1ea6cef0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3/signaling 200 19ms","method":"POST","requestID":"1ea6cef0-782b-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1628,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1ea9dc30-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F324ac50f-b357-420a-be6e-f965ae06a963","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"56433d8d-da1f-4c78-b78b-a12d44bf0f38","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.5162392} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1628,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.205975,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1629,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/324ac50f-b357-420a-be6e-f965ae06a963","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1ea96700-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/324ac50f-b357-420a-be6e-f965ae06a963","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1ea96700-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddbd6785-92c4-4f3b-bc97-aaebadaab03d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d418b60a-ba13-42b1-9553-685490775d99","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.5195265} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"1ea96700-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1629,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.58947,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} device-1 | {"level":"info","message":"GET /peerconnections/324ac50f-b357-420a-be6e-f965ae06a963 200 8ms","method":"GET","requestID":"1ea96700-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/peerconnections/324ac50f-b357-420a-be6e-f965ae06a963"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1ea9dc30-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1ea9dc30-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1ea9dc30-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d/signaling 200 8ms","method":"POST","requestID":"1ea9dc30-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"321c40cb555e1b89bbc6a548b9c23bd8","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"321c40cb555e1b89bbc6a548b9c23bd8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1eacc260-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1630,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"30af1ac3-9460-4dfa-a23f-eff006a33e58","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.5382557} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1630,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.09309,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1eacc260-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1eacc260-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1eacc260-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3/signaling 200 8ms","method":"POST","requestID":"1eacc260-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1eae21f0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1631,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddbd6785-92c4-4f3b-bc97-aaebadaab03d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"277de3f3-df6a-49f8-9954-c4fbe28019ce","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.5474124} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1631,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.04095,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1eae21f0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1eae21f0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1eae21f0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d/signaling 200 7ms","method":"POST","requestID":"1eae21f0-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM","level":"info","message":"auth send jwt","requestID":"a8117a554c32ea5c8b3338672cc6abfd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a8117a554c32ea5c8b3338672cc6abfd","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/bcaa5031-150b-4d6e-8799-261efbed66b6","requestID":"a8117a554c32ea5c8b3338672cc6abfd"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1632,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1632,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.751456,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/bcaa5031-150b-4d6e-8799-261efbed66b6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a8117a554c32ea5c8b3338672cc6abfd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/bcaa5031-150b-4d6e-8799-261efbed66b6","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931206,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a8117a554c32ea5c8b3338672cc6abfd","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/bcaa5031-150b-4d6e-8799-261efbed66b6","requestID":"a8117a554c32ea5c8b3338672cc6abfd"} experiment-1 | {"level":"info","message":"GET /experiments/bcaa5031-150b-4d6e-8799-261efbed66b6 200 9ms","method":"GET","requestID":"a8117a554c32ea5c8b3338672cc6abfd","responseTime":9,"status":200,"url":"/experiments/bcaa5031-150b-4d6e-8799-261efbed66b6"} gateway-1 | {"time_local":"21/Sep/2024:15:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/bcaa5031-150b-4d6e-8799-261efbed66b6 HTTP/1.1","status": "200","body_bytes_sent":"1293","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a8117a554c32ea5c8b3338672cc6abfd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM","level":"info","message":"auth send jwt","requestID":"08e7604ea099d570d303dde15bf33050"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"08e7604ea099d570d303dde15bf33050","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/bcaa5031-150b-4d6e-8799-261efbed66b6","requestID":"08e7604ea099d570d303dde15bf33050"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1633,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1633,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.708621,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/bcaa5031-150b-4d6e-8799-261efbed66b6","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"08e7604ea099d570d303dde15bf33050","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/bcaa5031-150b-4d6e-8799-261efbed66b6","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931206,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"08e7604ea099d570d303dde15bf33050","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bcaa5031-150b-4d6e-8799-261efbed66b6"},"level":"info","message":"Attempting to finish experiment","requestID":"08e7604ea099d570d303dde15bf33050"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"1eb65f50-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1634,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1634,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.836623,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/324ac50f-b357-420a-be6e-f965ae06a963","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1eb65f50-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/324ac50f-b357-420a-be6e-f965ae06a963","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931206,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1eb65f50-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/1d6a7384-6e4d-4f0b-beae-606a1c036dd4?id=f652568a-e691-462a-a911-8a7b0a242fc8 HTTP/1.1","status": "101","body_bytes_sent":"916","request_time":"0.146","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"37ff1178cd83adbc3ea76ba0448268c4"} gateway-1 | {"time_local":"21/Sep/2024:15:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/1d6a7384-6e4d-4f0b-beae-606a1c036dd4?id=f8cf6891-46ec-4bdd-9924-a6b34234682e HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.147","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"a4be0e4187ff9b5ed74615ba051864f5"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"f652568a-e691-462a-a911-8a7b0a242fc8\" in room \"http://localhost/rooms/1d6a7384-6e4d-4f0b-beae-606a1c036dd4\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"f652568a-e691-462a-a911-8a7b0a242fc8\" from room \"http://localhost/rooms/1d6a7384-6e4d-4f0b-beae-606a1c036dd4\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"f8cf6891-46ec-4bdd-9924-a6b34234682e\" in room \"http://localhost/rooms/1d6a7384-6e4d-4f0b-beae-606a1c036dd4\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"f8cf6891-46ec-4bdd-9924-a6b34234682e\" from room \"http://localhost/rooms/1d6a7384-6e4d-4f0b-beae-606a1c036dd4\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/324ac50f-b357-420a-be6e-f965ae06a963' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/324ac50f-b357-420a-be6e-f965ae06a963' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"324ac50f-b357-420a-be6e-f965ae06a963","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f6d1a0b8dbd781bc7f344b3c3f762dba","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"f6d1a0b8dbd781bc7f344b3c3f762dba","responseTime":0,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f633a48ff781784715a148abb4de51ce","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f633a48ff781784715a148abb4de51ce","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/324ac50f-b357-420a-be6e-f965ae06a963"}}},"level":"info","message":"received a callback","requestID":"f6d1a0b8dbd781bc7f344b3c3f762dba"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F324ac50f-b357-420a-be6e-f965ae06a963': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F324ac50f-b357-420a-be6e-f965ae06a963","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"e53412ee-3ff8-4638-b8f6-999b51694c55","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.6161294} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b2dc8bc9-2f03-4186-9019-99868dff4c42","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.6163986} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/324ac50f-b357-420a-be6e-f965ae06a963"}}},"level":"info","message":"received a callback","requestID":"f633a48ff781784715a148abb4de51ce"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"1eb65f50-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"324ac50f-b357-420a-be6e-f965ae06a963","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"1eb65f50-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/324ac50f-b357-420a-be6e-f965ae06a963 204 37ms","method":"DELETE","requestID":"1eb65f50-782b-11ef-88d4-5fea3f61bb98","responseTime":37,"status":204,"url":"/peerconnections/324ac50f-b357-420a-be6e-f965ae06a963"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bcaa5031-150b-4d6e-8799-261efbed66b6"},"level":"info","message":"Successfully finished experiment","requestID":"08e7604ea099d570d303dde15bf33050"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1ebe9cb0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1635,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4a7dd0de-9d7e-4bb0-96a6-72efb6b77d36","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.6595995} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1635,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.694914,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1ebe9cb0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"1ebe9cb0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1ebe9cb0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3/signaling 200 15ms","method":"POST","requestID":"1ebe9cb0-782b-11ef-88d4-5fea3f61bb98","responseTime":15,"status":200,"url":"/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3/signaling"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbcaa5031-150b-4d6e-8799-261efbed66b6': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbcaa5031-150b-4d6e-8799-261efbed66b6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"91a36988-784e-4eb8-b97c-019c3935c2fe","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.666714} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9321b15b-61cc-46cd-a212-7cf15c955418","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.667028} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"08e7604ea099d570d303dde15bf33050","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1ec134c0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1636,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddbd6785-92c4-4f3b-bc97-aaebadaab03d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"772bd96e-355c-485c-985f-f71a496a95b5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.6730828} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1636,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.705389,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1ec134c0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1ec134c0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1ec134c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d/signaling 200 10ms","method":"POST","requestID":"1ec134c0-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/bcaa5031-150b-4d6e-8799-261efbed66b6","requestID":"08e7604ea099d570d303dde15bf33050"} gateway-1 | {"time_local":"21/Sep/2024:15:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/bcaa5031-150b-4d6e-8799-261efbed66b6 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.145","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"08e7604ea099d570d303dde15bf33050"} experiment-1 | {"level":"info","message":"DELETE /experiments/bcaa5031-150b-4d6e-8799-261efbed66b6 204 143ms","method":"DELETE","requestID":"08e7604ea099d570d303dde15bf33050","responseTime":143,"status":204,"url":"/experiments/bcaa5031-150b-4d6e-8799-261efbed66b6"} gateway-1 | {"time_local":"21/Sep/2024:15:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2070","request_time":"0.582","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"65ff83da382aa126374bd72cf8ed9087"} gateway-1 | {"time_local":"21/Sep/2024:15:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2067","request_time":"0.567","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"bd4a86b134c664eaf8595ac876499220"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 118ms","method":"POST","requestID":"f6d1a0b8dbd781bc7f344b3c3f762dba","responseTime":118,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.120","http_referrer":"","http_user_agent":"node-fetch","requestID":"f6d1a0b8dbd781bc7f344b3c3f762dba"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 117ms","method":"POST","requestID":"f633a48ff781784715a148abb4de51ce","responseTime":117,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.121","http_referrer":"","http_user_agent":"node-fetch","requestID":"f633a48ff781784715a148abb4de51ce"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM","level":"info","message":"auth send jwt","requestID":"c93cd5230f44302014d8d45f36a8c4cd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c93cd5230f44302014d8d45f36a8c4cd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/ddbd6785-92c4-4f3b-bc97-aaebadaab03d' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"c93cd5230f44302014d8d45f36a8c4cd"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1637,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1637,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.249412,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"c93cd5230f44302014d8d45f36a8c4cd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931206,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c93cd5230f44302014d8d45f36a8c4cd","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/b79f26b1-c3e8-46a2-8c57-9fa5d569a8f3' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"427e2d95-edff-4fce-8e23-4f3885544aad","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.7605524} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c93cd5230f44302014d8d45f36a8c4cd","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"830173da-1b66-413e-85a2-ab83ab4e4075","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.766222} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c93cd5230f44302014d8d45f36a8c4cd","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"47b0b301-a4f6-4427-b687-020f951cfe07","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.7786686} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1b610cf4-3072-45e3-9155-cc937dbcb4ac","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.7790308} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"c93cd5230f44302014d8d45f36a8c4cd","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:46.778627755Z"}]},"request_id":"26d3ec08-a802-4c91-9f89-21aa555a9205","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.7838273} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c93cd5230f44302014d8d45f36a8c4cd","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c93cd5230f44302014d8d45f36a8c4cd"} gateway-1 | {"time_local":"21/Sep/2024:15:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c93cd5230f44302014d8d45f36a8c4cd"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"c93cd5230f44302014d8d45f36a8c4cd","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM","level":"info","message":"auth send jwt","requestID":"e8d5842d89b3ff3d288c9890ece339e8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e8d5842d89b3ff3d288c9890ece339e8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e8d5842d89b3ff3d288c9890ece339e8"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1638,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1638,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.037606,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e8d5842d89b3ff3d288c9890ece339e8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931206,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwNn0.-8h0aBLnViUHbbVk5ifraNCO5QnDUF_XHFHPdUs7aJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e8d5842d89b3ff3d288c9890ece339e8","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F893fd277-8ef4-4d6c-9743-34924c70ef9f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"568260a0-4e3e-4feb-871e-2bab7284b867","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.8078213} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e8d5842d89b3ff3d288c9890ece339e8","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6b4f8d09-35d1-43c0-8dea-042a1c1724b6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.8127015} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e8d5842d89b3ff3d288c9890ece339e8","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F893fd277-8ef4-4d6c-9743-34924c70ef9f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"cb6817ab-9db3-4a1f-9466-768909f02a29","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.8287284} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7127016b-f942-41cc-9fab-c120588115c4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.8289657} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"e8d5842d89b3ff3d288c9890ece339e8","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F893fd277-8ef4-4d6c-9743-34924c70ef9f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F893fd277-8ef4-4d6c-9743-34924c70ef9f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:46.828677575Z"}]},"request_id":"dd3bf235-7247-48d1-a4b0-4dd88a854a6e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931206.8334527} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e8d5842d89b3ff3d288c9890ece339e8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e8d5842d89b3ff3d288c9890ece339e8"} gateway-1 | {"time_local":"21/Sep/2024:15:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e8d5842d89b3ff3d288c9890ece339e8"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"e8d5842d89b3ff3d288c9890ece339e8","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"608fc6b0965a4fb1a512eea0fe310feb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"608fc6b0965a4fb1a512eea0fe310feb","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"608fc6b0965a4fb1a512eea0fe310feb"} device-1 | {"level":"info","message":"OPTIONS /devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7/websocket 200 1ms","method":"OPTIONS","requestID":"608fc6b0965a4fb1a512eea0fe310feb","responseTime":1,"status":200,"url":"/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOH0.WEGdfeB4rjqZG7Kn6MQDMx8HF0vY9ojf-VcyRxe3zOY","level":"info","message":"auth send jwt","requestID":"e54cb4165e9824f186645331d8a7c5a5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e54cb4165e9824f186645331d8a7c5a5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e54cb4165e9824f186645331d8a7c5a5"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1639,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:48Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1639,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.21598,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e54cb4165e9824f186645331d8a7c5a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931208,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOH0.WEGdfeB4rjqZG7Kn6MQDMx8HF0vY9ojf-VcyRxe3zOY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e54cb4165e9824f186645331d8a7c5a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e54cb4165e9824f186645331d8a7c5a5"} gateway-1 | {"time_local":"21/Sep/2024:15:06:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e54cb4165e9824f186645331d8a7c5a5"} device-1 | {"level":"info","message":"POST /devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7/websocket 200 22ms","method":"POST","requestID":"e54cb4165e9824f186645331d8a7c5a5","responseTime":22,"status":200,"url":"/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8d3fd89f6cc79bd7623c6201e2009f43","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8d3fd89f6cc79bd7623c6201e2009f43","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/893fd277-8ef4-4d6c-9743-34924c70ef9f/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"8d3fd89f6cc79bd7623c6201e2009f43"} device-1 | {"level":"info","message":"OPTIONS /devices/893fd277-8ef4-4d6c-9743-34924c70ef9f/websocket 200 0ms","method":"OPTIONS","requestID":"8d3fd89f6cc79bd7623c6201e2009f43","responseTime":0,"status":200,"url":"/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOH0.WEGdfeB4rjqZG7Kn6MQDMx8HF0vY9ojf-VcyRxe3zOY","level":"info","message":"auth send jwt","requestID":"902c00f3d23227033c12b0b8fbd357cb"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"902c00f3d23227033c12b0b8fbd357cb","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"902c00f3d23227033c12b0b8fbd357cb"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1640,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:48Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1640,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.717437,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"902c00f3d23227033c12b0b8fbd357cb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931208,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOH0.WEGdfeB4rjqZG7Kn6MQDMx8HF0vY9ojf-VcyRxe3zOY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"902c00f3d23227033c12b0b8fbd357cb","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"902c00f3d23227033c12b0b8fbd357cb"} device-1 | {"level":"info","message":"POST /devices/893fd277-8ef4-4d6c-9743-34924c70ef9f/websocket 200 19ms","method":"POST","requestID":"902c00f3d23227033c12b0b8fbd357cb","responseTime":19,"status":200,"url":"/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:06:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/893fd277-8ef4-4d6c-9743-34924c70ef9f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"902c00f3d23227033c12b0b8fbd357cb"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"28eecaa6605f174978da790c0e6c9802","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"28eecaa6605f174978da790c0e6c9802","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"28eecaa6605f174978da790c0e6c9802"} device-1 | {"level":"info","message":"OPTIONS /devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7? 200 1ms","method":"OPTIONS","requestID":"28eecaa6605f174978da790c0e6c9802","responseTime":1,"status":200,"url":"/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOH0.WEGdfeB4rjqZG7Kn6MQDMx8HF0vY9ojf-VcyRxe3zOY","level":"info","message":"auth send jwt","requestID":"e75866e7f8c9965df3051162455276cf"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e75866e7f8c9965df3051162455276cf","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e75866e7f8c9965df3051162455276cf"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1641,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:48Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1641,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.108536,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:48Z"} device-1 | {"level":"info","message":"device 'http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f' connected"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"e75866e7f8c9965df3051162455276cf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931208,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOH0.WEGdfeB4rjqZG7Kn6MQDMx8HF0vY9ojf-VcyRxe3zOY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e75866e7f8c9965df3051162455276cf","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:46.778627755Z"}]},"request_id":"c63dcc19-0cf1-4a72-9e85-43361697c736","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931208.8969717} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e75866e7f8c9965df3051162455276cf","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"57087d74-a2c6-4034-85b1-da1df827a3dd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931208.901882} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e75866e7f8c9965df3051162455276cf","responseTime":4,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dd6b09057dc698ea7de506552e264707","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"dd6b09057dc698ea7de506552e264707","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/893fd277-8ef4-4d6c-9743-34924c70ef9f? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.002","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"dd6b09057dc698ea7de506552e264707"} device-1 | {"level":"info","message":"OPTIONS /devices/893fd277-8ef4-4d6c-9743-34924c70ef9f? 200 0ms","method":"OPTIONS","requestID":"dd6b09057dc698ea7de506552e264707","responseTime":0,"status":200,"url":"/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOH0.WEGdfeB4rjqZG7Kn6MQDMx8HF0vY9ojf-VcyRxe3zOY","level":"info","message":"auth send jwt","requestID":"6becd5c8a1072dad5b20887f09c004e2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6becd5c8a1072dad5b20887f09c004e2","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"6becd5c8a1072dad5b20887f09c004e2"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:46.778627755Z"}]},"request_id":"35dc0a1d-6ded-41e5-aa88-5eeb899b3a51","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931208.9167225} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e75866e7f8c9965df3051162455276cf","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1642,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:48Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1642,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.937907,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:48Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e75866e7f8c9965df3051162455276cf"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"6becd5c8a1072dad5b20887f09c004e2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931208,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOH0.WEGdfeB4rjqZG7Kn6MQDMx8HF0vY9ojf-VcyRxe3zOY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6becd5c8a1072dad5b20887f09c004e2","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"21/Sep/2024:15:06:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.040","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e75866e7f8c9965df3051162455276cf"} device-1 | {"level":"info","message":"PATCH /devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7? 200 35ms","method":"PATCH","requestID":"e75866e7f8c9965df3051162455276cf","responseTime":35,"status":200,"url":"/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F893fd277-8ef4-4d6c-9743-34924c70ef9f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F893fd277-8ef4-4d6c-9743-34924c70ef9f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:46.828677575Z"}]},"request_id":"12cd2d0d-bda5-431d-8347-3dee10fa0f3c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931208.9253047} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6becd5c8a1072dad5b20887f09c004e2","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8aea563f-bb5d-4052-ae43-cce7e653a862","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931208.9297109} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"6becd5c8a1072dad5b20887f09c004e2","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F893fd277-8ef4-4d6c-9743-34924c70ef9f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F893fd277-8ef4-4d6c-9743-34924c70ef9f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:46.828677575Z"}]},"request_id":"88f91d33-9261-491b-b171-968c0b561b9a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931208.9397926} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6becd5c8a1072dad5b20887f09c004e2","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"6becd5c8a1072dad5b20887f09c004e2"} gateway-1 | {"time_local":"21/Sep/2024:15:06:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/893fd277-8ef4-4d6c-9743-34924c70ef9f? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.032","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6becd5c8a1072dad5b20887f09c004e2"} device-1 | {"level":"info","message":"PATCH /devices/893fd277-8ef4-4d6c-9743-34924c70ef9f? 200 26ms","method":"PATCH","requestID":"6becd5c8a1072dad5b20887f09c004e2","responseTime":26,"status":200,"url":"/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOH0.WEGdfeB4rjqZG7Kn6MQDMx8HF0vY9ojf-VcyRxe3zOY","level":"info","message":"auth send jwt","requestID":"248d56e5bf7e4b74516b57b25675b0af"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"248d56e5bf7e4b74516b57b25675b0af","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"248d56e5bf7e4b74516b57b25675b0af"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1643,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:48Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1643,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.995285,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"248d56e5bf7e4b74516b57b25675b0af","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931208,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOH0.WEGdfeB4rjqZG7Kn6MQDMx8HF0vY9ojf-VcyRxe3zOY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"248d56e5bf7e4b74516b57b25675b0af","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:46.778627755Z"}]},"request_id":"8ca1ff9e-9ed9-4b65-aa7a-a36c0d5bf0bc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931208.960021} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"248d56e5bf7e4b74516b57b25675b0af","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"248d56e5bf7e4b74516b57b25675b0af"} gateway-1 | {"time_local":"21/Sep/2024:15:06:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"248d56e5bf7e4b74516b57b25675b0af"} device-1 | {"level":"info","message":"GET /devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7? 200 13ms","method":"GET","requestID":"248d56e5bf7e4b74516b57b25675b0af","responseTime":13,"status":200,"url":"/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOH0.WEGdfeB4rjqZG7Kn6MQDMx8HF0vY9ojf-VcyRxe3zOY","level":"info","message":"auth send jwt","requestID":"740b2c796af61236951a6380921338aa"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"740b2c796af61236951a6380921338aa","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"740b2c796af61236951a6380921338aa"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1644,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:48Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1644,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.190617,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"740b2c796af61236951a6380921338aa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931208,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOH0.WEGdfeB4rjqZG7Kn6MQDMx8HF0vY9ojf-VcyRxe3zOY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"740b2c796af61236951a6380921338aa","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F893fd277-8ef4-4d6c-9743-34924c70ef9f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F893fd277-8ef4-4d6c-9743-34924c70ef9f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:46.828677575Z"}]},"request_id":"1f202ccf-e1dc-4e5f-be53-fa961714ee1c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931208.978703} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"740b2c796af61236951a6380921338aa","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"740b2c796af61236951a6380921338aa"} device-1 | {"level":"info","message":"GET /devices/893fd277-8ef4-4d6c-9743-34924c70ef9f? 200 14ms","method":"GET","requestID":"740b2c796af61236951a6380921338aa","responseTime":14,"status":200,"url":"/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/893fd277-8ef4-4d6c-9743-34924c70ef9f? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"740b2c796af61236951a6380921338aa"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOH0.WEGdfeB4rjqZG7Kn6MQDMx8HF0vY9ojf-VcyRxe3zOY","level":"info","message":"auth send jwt","requestID":"410a6bd5e03d2bfc2ae85c3f7905d47f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"410a6bd5e03d2bfc2ae85c3f7905d47f","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"410a6bd5e03d2bfc2ae85c3f7905d47f"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1645,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:48Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1645,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.897009,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:48Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"410a6bd5e03d2bfc2ae85c3f7905d47f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931208,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOH0.WEGdfeB4rjqZG7Kn6MQDMx8HF0vY9ojf-VcyRxe3zOY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"410a6bd5e03d2bfc2ae85c3f7905d47f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed"},"level":"info","message":"Attempting to run experiment","requestID":"410a6bd5e03d2bfc2ae85c3f7905d47f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed"},"level":"info","message":"Attempting to book experiment","requestID":"410a6bd5e03d2bfc2ae85c3f7905d47f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed"},"level":"info","message":"Successfully booked experiment","requestID":"410a6bd5e03d2bfc2ae85c3f7905d47f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"20297750-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2029c570-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1646,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1646,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.764241,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1647,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"20297750-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931208,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOH0.WEGdfeB4rjqZG7Kn6MQDMx8HF0vY9ojf-VcyRxe3zOY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"20297750-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1647,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.864516,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"2029c570-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931208,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOH0.WEGdfeB4rjqZG7Kn6MQDMx8HF0vY9ojf-VcyRxe3zOY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2029c570-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:46.778627755Z"}]},"request_id":"f9576832-4252-41ad-a5d5-49cf54a328c6","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.0427494} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"20297750-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F893fd277-8ef4-4d6c-9743-34924c70ef9f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F893fd277-8ef4-4d6c-9743-34924c70ef9f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:46.828677575Z"}]},"request_id":"0f57863d-32ee-4e57-9ca5-f760a15b1519","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.0433614} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2029c570-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"20297750-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7? 200 21ms","method":"GET","requestID":"20297750-782b-11ef-88d4-5fea3f61bb98","responseTime":21,"status":200,"url":"/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2029c570-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/893fd277-8ef4-4d6c-9743-34924c70ef9f? 200 20ms","method":"GET","requestID":"2029c570-782b-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed"},"level":"info","message":"Setting up experiment","requestID":"410a6bd5e03d2bfc2ae85c3f7905d47f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"410a6bd5e03d2bfc2ae85c3f7905d47f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed"},"level":"info","message":"Successfully locked booking for experiment","requestID":"410a6bd5e03d2bfc2ae85c3f7905d47f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"410a6bd5e03d2bfc2ae85c3f7905d47f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"410a6bd5e03d2bfc2ae85c3f7905d47f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed"},"level":"info","message":"Attempting to update booking for experiment","requestID":"410a6bd5e03d2bfc2ae85c3f7905d47f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed"},"level":"info","message":"Successfully updated booking for experiment","requestID":"410a6bd5e03d2bfc2ae85c3f7905d47f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed"},"level":"info","message":"Successfully set up experiment","requestID":"410a6bd5e03d2bfc2ae85c3f7905d47f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"20329f10-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2032c620-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed"},"level":"info","message":"Successfully running experiment","requestID":"410a6bd5e03d2bfc2ae85c3f7905d47f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"20331440-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1648,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1648,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.912816,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1649,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"20329f10-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931208,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOH0.WEGdfeB4rjqZG7Kn6MQDMx8HF0vY9ojf-VcyRxe3zOY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"20329f10-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1649,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.37608,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"2032c620-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931208,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOH0.WEGdfeB4rjqZG7Kn6MQDMx8HF0vY9ojf-VcyRxe3zOY"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"2032c620-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1650,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1650,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.027025,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7cc844e8-cc86-4d5b-942a-0692e37dd8e5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.1016932} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"20331440-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"20331440-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:46.778627755Z"}]},"request_id":"216cf1fb-e484-4262-91e9-d7b57de37817","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.1030052} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F893fd277-8ef4-4d6c-9743-34924c70ef9f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F893fd277-8ef4-4d6c-9743-34924c70ef9f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:46.828677575Z"}]},"request_id":"d71a716e-32cc-4132-af41-30bf14a128cd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.1041882} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"20329f10-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2032c620-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"20331440-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7/signaling 200 23ms","method":"POST","requestID":"20331440-782b-11ef-88d4-5fea3f61bb98","responseTime":23,"status":200,"url":"/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"20329f10-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F20fbce10-8180-47b9-ac92-087bbd2c64ed#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F20fbce10-8180-47b9-ac92-087bbd2c64ed","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"e654563d-5099-4b16-93cd-a60101a34b31","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.1164474} device-1 | {"level":"info","message":"GET /devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7? 200 27ms","method":"GET","requestID":"20329f10-782b-11ef-88d4-5fea3f61bb98","responseTime":27,"status":200,"url":"/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"70393cf1-62bc-4090-bd05-5810332f624e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.1167703} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"20370be0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"410a6bd5e03d2bfc2ae85c3f7905d47f","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2032c620-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/893fd277-8ef4-4d6c-9743-34924c70ef9f? 200 30ms","method":"GET","requestID":"2032c620-782b-11ef-88d4-5fea3f61bb98","responseTime":30,"status":200,"url":"/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f?"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1651,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:49Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2037cf30-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F893fd277-8ef4-4d6c-9743-34924c70ef9f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9828b0f6-b35f-4ee2-b235-23f860b41bbe","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.1238294} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1651,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.573219,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1652,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:49Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"410a6bd5e03d2bfc2ae85c3f7905d47f"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"20370be0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} gateway-1 | {"time_local":"21/Sep/2024:15:06:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"808","request_time":"0.141","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"410a6bd5e03d2bfc2ae85c3f7905d47f"} experiment-1 | {"level":"info","message":"POST /experiments? 201 137ms","method":"POST","requestID":"410a6bd5e03d2bfc2ae85c3f7905d47f","responseTime":137,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"20370be0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f75bcc41-986f-4f44-a372-16cc441b779d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.1277995} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1652,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.074251,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:49Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"20370be0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"2037cf30-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"POST /devices/893fd277-8ef4-4d6c-9743-34924c70ef9f/signaling 200 11ms","method":"POST","requestID":"20370be0-782b-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2037cf30-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOX0.2gFyeKuMflbj2n2Dtt6vYX2soUNAsbbtCVwNsKkes54","level":"info","message":"auth send jwt","requestID":"93dfcab7f78d66342634a4acd856ad76"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"93dfcab7f78d66342634a4acd856ad76","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2037cf30-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7/signaling 200 9ms","method":"POST","requestID":"2037cf30-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"93dfcab7f78d66342634a4acd856ad76"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"203955d0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1653,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1653,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.665766,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1654,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"93dfcab7f78d66342634a4acd856ad76","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931209,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOX0.2gFyeKuMflbj2n2Dtt6vYX2soUNAsbbtCVwNsKkes54"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"93dfcab7f78d66342634a4acd856ad76","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F893fd277-8ef4-4d6c-9743-34924c70ef9f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e743d78f-4609-4820-bd7f-8e3814f37ab3","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.1376956} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1654,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.508864,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"203955d0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"203955d0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:46.778627755Z"}]},"request_id":"e2dd7ce5-54dd-49d9-9c5c-2b56aeeed5a9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.1396513} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"93dfcab7f78d66342634a4acd856ad76","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"203955d0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/893fd277-8ef4-4d6c-9743-34924c70ef9f/signaling 200 10ms","method":"POST","requestID":"203955d0-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"93dfcab7f78d66342634a4acd856ad76"} gateway-1 | {"time_local":"21/Sep/2024:15:06:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"93dfcab7f78d66342634a4acd856ad76"} device-1 | {"level":"info","message":"GET /devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7? 200 12ms","method":"GET","requestID":"93dfcab7f78d66342634a4acd856ad76","responseTime":12,"status":200,"url":"/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"410a6bd5e03d2bfc2ae85c3f7905d47f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"203b2a90-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"203b51a0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1655,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1655,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.693686,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1656,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:49Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOX0.2gFyeKuMflbj2n2Dtt6vYX2soUNAsbbtCVwNsKkes54","level":"info","message":"auth send jwt","requestID":"4f6a91fb91fd5711709c9ce54d35d7ba"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4f6a91fb91fd5711709c9ce54d35d7ba","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"203b2a90-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931208,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOH0.WEGdfeB4rjqZG7Kn6MQDMx8HF0vY9ojf-VcyRxe3zOY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"203b2a90-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1656,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.581683,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:49Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4f6a91fb91fd5711709c9ce54d35d7ba"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"203b51a0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931208,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOH0.WEGdfeB4rjqZG7Kn6MQDMx8HF0vY9ojf-VcyRxe3zOY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"203b51a0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1657,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1657,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.578949,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"4f6a91fb91fd5711709c9ce54d35d7ba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931209,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOX0.2gFyeKuMflbj2n2Dtt6vYX2soUNAsbbtCVwNsKkes54"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"4f6a91fb91fd5711709c9ce54d35d7ba","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:46.778627755Z"}]},"request_id":"a933aa1c-1b9f-4e74-8813-a41a9354792a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.1525602} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"203b2a90-782b-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"203b2a90-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F893fd277-8ef4-4d6c-9743-34924c70ef9f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F893fd277-8ef4-4d6c-9743-34924c70ef9f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:46.828677575Z"}]},"request_id":"f93c1afe-bd96-45be-a452-fe8d0507fbda","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.1550782} device-1 | {"level":"info","message":"GET /devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7? 200 10ms","method":"GET","requestID":"203b2a90-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"203b51a0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F893fd277-8ef4-4d6c-9743-34924c70ef9f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F893fd277-8ef4-4d6c-9743-34924c70ef9f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:46.828677575Z"}]},"request_id":"919d4c35-6e5a-40ae-95af-06289b7f92a9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.1558256} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4f6a91fb91fd5711709c9ce54d35d7ba","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"203b51a0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/893fd277-8ef4-4d6c-9743-34924c70ef9f? 200 13ms","method":"GET","requestID":"203b51a0-782b-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4f6a91fb91fd5711709c9ce54d35d7ba"} device-1 | {"level":"info","message":"GET /devices/893fd277-8ef4-4d6c-9743-34924c70ef9f? 200 10ms","method":"GET","requestID":"4f6a91fb91fd5711709c9ce54d35d7ba","responseTime":10,"status":200,"url":"/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/893fd277-8ef4-4d6c-9743-34924c70ef9f? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4f6a91fb91fd5711709c9ce54d35d7ba"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed"},"level":"info","message":"Building connection plan","requestID":"410a6bd5e03d2bfc2ae85c3f7905d47f"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"b72ac609-7f1a-44a0-a647-66fd25f6eb6e"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"70274094-9e00-4287-98b7-f4ea580ef4b2"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"bb3ca7a1-f97a-4678-8f34-e20002f90cea"}]},"level":"info","message":"Built pairwise service configurations","requestID":"410a6bd5e03d2bfc2ae85c3f7905d47f"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"410a6bd5e03d2bfc2ae85c3f7905d47f"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"203d9b90-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1658,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1658,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.759326,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"203d9b90-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931208,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOH0.WEGdfeB4rjqZG7Kn6MQDMx8HF0vY9ojf-VcyRxe3zOY"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"203d9b90-782b-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"8772d83f-afa9-4843-99b0-6872c4ddf845","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.1704783} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2aa9ce70-12b2-434f-8c1b-f58375e842a9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.1707108} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"203d9b90-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"203d9b90-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"203d9b90-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/9613f577-7eee-4e1b-b535-1a48bf8e7ce3'","requestID":"203d9b90-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/9613f577-7eee-4e1b-b535-1a48bf8e7ce3'","requestID":"203d9b90-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"203d9b90-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 21ms","method":"POST","requestID":"203d9b90-782b-11ef-88d4-5fea3f61bb98","responseTime":21,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"203d9b90-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"410a6bd5e03d2bfc2ae85c3f7905d47f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"20467530-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1659,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b872f22b-3311-46c6-9376-db58217da527","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.2239919} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1659,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.026778,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"20467530-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"20467530-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"20467530-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7/signaling 200 9ms","method":"POST","requestID":"20467530-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7/signaling"} device-1 | {"device":"ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"204849f0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"device":"893fd277-8ef4-4d6c-9743-34924c70ef9f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"893fd277-8ef4-4d6c-9743-34924c70ef9f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1660,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F893fd277-8ef4-4d6c-9743-34924c70ef9f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8e96720c-e476-4dde-8c30-42db9536057c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.2367291} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1660,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.255434,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"204849f0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"204849f0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"204849f0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/893fd277-8ef4-4d6c-9743-34924c70ef9f/signaling 200 10ms","method":"POST","requestID":"204849f0-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 5651913227515833657 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:jAsQ\r\na=ice-pwd:UM8D07GSfh4+nYTCUPw0YvFC\r\na=ice-options:trickle\r\na=fingerprint:sha-256 34:38:EE:D6:E9:35:17:C0:E5:96:3A:BA:7D:36:71:72:5C:E0:0B:61:3C:BC:26:CF:11:C0:D5:54:23:45:AB:DD\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 4209463933731089497 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:j/il\r\na=ice-pwd:by/Vx2pW5AAWZ3pN2YZC4MaD\r\na=ice-options:trickle\r\na=fingerprint:sha-256 A7:50:E1:6E:C0:CD:32:70:8E:19:F5:CD:0E:7D:6C:9A:3D:3C:73:F8:DA:CA:95:15:44:06:A4:59:C6:FE:50:1C\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"893fd277-8ef4-4d6c-9743-34924c70ef9f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1134595540 1 udp 2113937151 66eda6c3-0367-4e3c-b383-a07d57c6f1ca.local 60674 typ host generation 0 ufrag j/il network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"893fd277-8ef4-4d6c-9743-34924c70ef9f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3498781895 1 udp 1677729535 141.24.211.56 60674 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag j/il network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"893fd277-8ef4-4d6c-9743-34924c70ef9f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f'"} device-1 | {"content":{"candidate":"candidate:4143346281 1 udp 2113937151 77ee1527-2f10-4671-9443-3b8d868927ff.local 56159 typ host generation 0 ufrag jAsQ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1709036410 1 udp 1677729535 141.24.211.56 56159 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag jAsQ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7'"} device-1 | {"device":"ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"893fd277-8ef4-4d6c-9743-34924c70ef9f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/9613f577-7eee-4e1b-b535-1a48bf8e7ce3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"9613f577-7eee-4e1b-b535-1a48bf8e7ce3","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"893fd277-8ef4-4d6c-9743-34924c70ef9f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4cfc17330a75996208aaa56b066dd45d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4cfc17330a75996208aaa56b066dd45d","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"893fd277-8ef4-4d6c-9743-34924c70ef9f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/9613f577-7eee-4e1b-b535-1a48bf8e7ce3"}}},"level":"info","message":"received a callback","requestID":"4cfc17330a75996208aaa56b066dd45d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"4cfc17330a75996208aaa56b066dd45d","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"4cfc17330a75996208aaa56b066dd45d"} device-1 | {"device":"893fd277-8ef4-4d6c-9743-34924c70ef9f","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"9613f577-7eee-4e1b-b535-1a48bf8e7ce3","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"9613f577-7eee-4e1b-b535-1a48bf8e7ce3","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/9613f577-7eee-4e1b-b535-1a48bf8e7ce3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"9613f577-7eee-4e1b-b535-1a48bf8e7ce3","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"373e701cdc8e4bdfb0330c02b072cba2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"373e701cdc8e4bdfb0330c02b072cba2","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/9613f577-7eee-4e1b-b535-1a48bf8e7ce3"}}},"level":"info","message":"received a callback","requestID":"373e701cdc8e4bdfb0330c02b072cba2"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"2052f850-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1661,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F9613f577-7eee-4e1b-b535-1a48bf8e7ce3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fb59fe58-dc85-4344-8f20-af7e2390d3f7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.305606} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1661,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.13157,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/9613f577-7eee-4e1b-b535-1a48bf8e7ce3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"2052f850-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/9613f577-7eee-4e1b-b535-1a48bf8e7ce3","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2052f850-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"2052f850-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/9613f577-7eee-4e1b-b535-1a48bf8e7ce3 200 7ms","method":"GET","requestID":"2052f850-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/peerconnections/9613f577-7eee-4e1b-b535-1a48bf8e7ce3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 28ms","method":"POST","requestID":"373e701cdc8e4bdfb0330c02b072cba2","responseTime":28,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.031","http_referrer":"","http_user_agent":"node-fetch","requestID":"373e701cdc8e4bdfb0330c02b072cba2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2056c8e0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1662,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F893fd277-8ef4-4d6c-9743-34924c70ef9f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"157abe5c-cc2e-43e3-b5f1-9338bf1613b5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.3305} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1662,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.189144,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"2056c8e0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2056c8e0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2056c8e0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/893fd277-8ef4-4d6c-9743-34924c70ef9f/signaling 200 8ms","method":"POST","requestID":"2056c8e0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"20582870-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1663,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"26e1a261-d27a-4c28-ba83-3849a8aac1cf","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.3394094} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1663,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.186776,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"20582870-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"20582870-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"20582870-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7/signaling 200 7ms","method":"POST","requestID":"20582870-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOX0.2gFyeKuMflbj2n2Dtt6vYX2soUNAsbbtCVwNsKkes54","level":"info","message":"auth send jwt","requestID":"bf788e1e5db306fa20d37ed013ec89bb"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"bf788e1e5db306fa20d37ed013ec89bb","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed","requestID":"bf788e1e5db306fa20d37ed013ec89bb"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1664,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1664,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.028177,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bf788e1e5db306fa20d37ed013ec89bb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931209,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOX0.2gFyeKuMflbj2n2Dtt6vYX2soUNAsbbtCVwNsKkes54"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bf788e1e5db306fa20d37ed013ec89bb","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed","requestID":"bf788e1e5db306fa20d37ed013ec89bb"} experiment-1 | {"level":"info","message":"GET /experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed 200 8ms","method":"GET","requestID":"bf788e1e5db306fa20d37ed013ec89bb","responseTime":8,"status":200,"url":"/experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed"} gateway-1 | {"time_local":"21/Sep/2024:15:06:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed HTTP/1.1","status": "200","body_bytes_sent":"881","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bf788e1e5db306fa20d37ed013ec89bb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOX0.2gFyeKuMflbj2n2Dtt6vYX2soUNAsbbtCVwNsKkes54","level":"info","message":"auth send jwt","requestID":"f360b5921ddd6d21c8891b8ed613dfc9"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f360b5921ddd6d21c8891b8ed613dfc9","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed","requestID":"f360b5921ddd6d21c8891b8ed613dfc9"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1665,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1665,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.642428,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"f360b5921ddd6d21c8891b8ed613dfc9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931209,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOX0.2gFyeKuMflbj2n2Dtt6vYX2soUNAsbbtCVwNsKkes54"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f360b5921ddd6d21c8891b8ed613dfc9","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed"},"level":"info","message":"Attempting to finish experiment","requestID":"f360b5921ddd6d21c8891b8ed613dfc9"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"20617740-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1666,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1666,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.865697,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/9613f577-7eee-4e1b-b535-1a48bf8e7ce3","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"20617740-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/9613f577-7eee-4e1b-b535-1a48bf8e7ce3","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931209,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOX0.2gFyeKuMflbj2n2Dtt6vYX2soUNAsbbtCVwNsKkes54"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"20617740-782b-11ef-88d4-5fea3f61bb98","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/9613f577-7eee-4e1b-b535-1a48bf8e7ce3","device":"893fd277-8ef4-4d6c-9743-34924c70ef9f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/9613f577-7eee-4e1b-b535-1a48bf8e7ce3","device":"ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/9613f577-7eee-4e1b-b535-1a48bf8e7ce3' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/9613f577-7eee-4e1b-b535-1a48bf8e7ce3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"9613f577-7eee-4e1b-b535-1a48bf8e7ce3","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F9613f577-7eee-4e1b-b535-1a48bf8e7ce3': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F9613f577-7eee-4e1b-b535-1a48bf8e7ce3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"d9766773-7906-44e2-a919-99ab71d8c726","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.4121916} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a3ec461a-6899-4b26-bdad-da5e6a8ddefd","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.4125438} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d263bb3afcfa2f7b624eb925994d7c40","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d263bb3afcfa2f7b624eb925994d7c40","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"20617740-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b4886dd36d2a3aeed2dfad3e2d0eac14","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/9613f577-7eee-4e1b-b535-1a48bf8e7ce3"}}},"level":"info","message":"received a callback","requestID":"d263bb3afcfa2f7b624eb925994d7c40"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b4886dd36d2a3aeed2dfad3e2d0eac14","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/9613f577-7eee-4e1b-b535-1a48bf8e7ce3"}}},"level":"info","message":"received a callback","requestID":"b4886dd36d2a3aeed2dfad3e2d0eac14"} device-1 | {"data":{"peerconnection":"9613f577-7eee-4e1b-b535-1a48bf8e7ce3","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"20617740-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/9613f577-7eee-4e1b-b535-1a48bf8e7ce3 204 34ms","method":"DELETE","requestID":"20617740-782b-11ef-88d4-5fea3f61bb98","responseTime":34,"status":204,"url":"/peerconnections/9613f577-7eee-4e1b-b535-1a48bf8e7ce3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed"},"level":"info","message":"Successfully finished experiment","requestID":"f360b5921ddd6d21c8891b8ed613dfc9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"20691860-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1667,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F893fd277-8ef4-4d6c-9743-34924c70ef9f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b8d123b0-4bb3-4ae1-ab85-0c9834ccd64f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.4502265} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1667,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.357868,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"20691860-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"20691860-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"20691860-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/893fd277-8ef4-4d6c-9743-34924c70ef9f/signaling 200 9ms","method":"POST","requestID":"20691860-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"206ac610-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F20fbce10-8180-47b9-ac92-087bbd2c64ed': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F20fbce10-8180-47b9-ac92-087bbd2c64ed","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"6b3c309b-7360-4752-8c91-0a0ad7c37575","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.4600205} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"30349d7b-288f-43e9-9845-6bf902eb0ed5","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.4602227} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"f360b5921ddd6d21c8891b8ed613dfc9","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fdf66fe6-3474-4730-aba0-f74033781db9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.463676} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1668,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1668,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.115746,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"206ac610-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"206ac610-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"206ac610-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7/signaling 200 10ms","method":"POST","requestID":"206ac610-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed","requestID":"f360b5921ddd6d21c8891b8ed613dfc9"} gateway-1 | {"time_local":"21/Sep/2024:15:06:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.141","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f360b5921ddd6d21c8891b8ed613dfc9"} experiment-1 | {"level":"info","message":"DELETE /experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed 204 138ms","method":"DELETE","requestID":"f360b5921ddd6d21c8891b8ed613dfc9","responseTime":138,"status":204,"url":"/experiments/20fbce10-8180-47b9-ac92-087bbd2c64ed"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 112ms","method":"POST","requestID":"d263bb3afcfa2f7b624eb925994d7c40","responseTime":112,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.115","http_referrer":"","http_user_agent":"node-fetch","requestID":"d263bb3afcfa2f7b624eb925994d7c40"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 111ms","method":"POST","requestID":"b4886dd36d2a3aeed2dfad3e2d0eac14","responseTime":111,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.116","http_referrer":"","http_user_agent":"node-fetch","requestID":"b4886dd36d2a3aeed2dfad3e2d0eac14"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOX0.2gFyeKuMflbj2n2Dtt6vYX2soUNAsbbtCVwNsKkes54","level":"info","message":"auth send jwt","requestID":"108660576db85752715200325cf8f1e9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"108660576db85752715200325cf8f1e9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"108660576db85752715200325cf8f1e9"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1669,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:49Z"} gateway-1 | {"time_local":"21/Sep/2024:15:06:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3079","request_time":"0.685","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"34fffc899a2795c1c5346757dfd9d4b4"} gateway-1 | {"time_local":"21/Sep/2024:15:06:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3079","request_time":"0.661","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"50c21e196fc9f569635c45635fa503fd"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1669,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.764918,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"108660576db85752715200325cf8f1e9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931209,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOX0.2gFyeKuMflbj2n2Dtt6vYX2soUNAsbbtCVwNsKkes54"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"108660576db85752715200325cf8f1e9","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/893fd277-8ef4-4d6c-9743-34924c70ef9f' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F769fda1e-7eb4-4ec6-be30-06128f6bde71","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"06b06f6c-510d-42ab-811b-be4318602c68","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.5459273} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"108660576db85752715200325cf8f1e9","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/ed7f75bd-a20b-4161-a0b5-c6cdc49f4ce7' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a60f4a49-aafb-4f27-b1b0-3e774b17934f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.5501792} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"108660576db85752715200325cf8f1e9","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F769fda1e-7eb4-4ec6-be30-06128f6bde71","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"82e0fbf8-20c1-488c-852f-ba245dd6584f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.5608072} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5042cf42-b7e6-496a-b361-42c942904aa8","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.5608978} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"108660576db85752715200325cf8f1e9","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F769fda1e-7eb4-4ec6-be30-06128f6bde71","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F769fda1e-7eb4-4ec6-be30-06128f6bde71","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:49.560775354Z"}]},"request_id":"1a5f386d-182d-45a2-ba20-7a7608803212","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.5644429} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"108660576db85752715200325cf8f1e9","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"108660576db85752715200325cf8f1e9"} device-1 | {"level":"info","message":"POST /devices? 201 36ms","method":"POST","requestID":"108660576db85752715200325cf8f1e9","responseTime":36,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"434","request_time":"0.041","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"108660576db85752715200325cf8f1e9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOX0.2gFyeKuMflbj2n2Dtt6vYX2soUNAsbbtCVwNsKkes54","level":"info","message":"auth send jwt","requestID":"7c420a18a3e962a4d1b9f269b053fda3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7c420a18a3e962a4d1b9f269b053fda3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7c420a18a3e962a4d1b9f269b053fda3"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1670,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1670,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.856282,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"7c420a18a3e962a4d1b9f269b053fda3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931209,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIwOX0.2gFyeKuMflbj2n2Dtt6vYX2soUNAsbbtCVwNsKkes54"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7c420a18a3e962a4d1b9f269b053fda3","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2860faf7-559c-45ec-87f1-4b5cea3182cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9251dce2-4207-4be3-bd43-6525c8ba3a80","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.5873632} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7c420a18a3e962a4d1b9f269b053fda3","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"93d4f8e7-be0c-4401-8d0f-24c3ae54e714","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.5909693} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"7c420a18a3e962a4d1b9f269b053fda3","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2860faf7-559c-45ec-87f1-4b5cea3182cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"6faf1bd0-cd85-4035-9d03-5b1cf057a5ec","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.6075187} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cfe22c27-05ab-4929-9318-a947bb1c73e2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.607685} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"7c420a18a3e962a4d1b9f269b053fda3","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2860faf7-559c-45ec-87f1-4b5cea3182cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2860faf7-559c-45ec-87f1-4b5cea3182cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:49.607476967Z"}]},"request_id":"19fcdee2-4664-4eb9-a20a-4ec066d45fdc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931209.6108046} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7c420a18a3e962a4d1b9f269b053fda3","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7c420a18a3e962a4d1b9f269b053fda3"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"7c420a18a3e962a4d1b9f269b053fda3","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7c420a18a3e962a4d1b9f269b053fda3"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4d713effecebb14f7cfb2e828a8dd1f8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4d713effecebb14f7cfb2e828a8dd1f8","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/2860faf7-559c-45ec-87f1-4b5cea3182cf/websocket 200 1ms","method":"OPTIONS","requestID":"4d713effecebb14f7cfb2e828a8dd1f8","responseTime":1,"status":200,"url":"/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf/websocket"} gateway-1 | {"time_local":"21/Sep/2024:15:06:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2860faf7-559c-45ec-87f1-4b5cea3182cf/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4d713effecebb14f7cfb2e828a8dd1f8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxMX0.HWoZ3zHt9g12xH9FOewLAQlVc5Hpf7FdJSJ4lzA2GNE","level":"info","message":"auth send jwt","requestID":"a997c65f004d1f712e02bd2455820a29"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a997c65f004d1f712e02bd2455820a29","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a997c65f004d1f712e02bd2455820a29"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1671,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:51Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1671,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.302646,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:51Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"a997c65f004d1f712e02bd2455820a29","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931211,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxMX0.HWoZ3zHt9g12xH9FOewLAQlVc5Hpf7FdJSJ4lzA2GNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a997c65f004d1f712e02bd2455820a29","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a997c65f004d1f712e02bd2455820a29"} gateway-1 | {"time_local":"21/Sep/2024:15:06:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2860faf7-559c-45ec-87f1-4b5cea3182cf/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a997c65f004d1f712e02bd2455820a29"} device-1 | {"level":"info","message":"POST /devices/2860faf7-559c-45ec-87f1-4b5cea3182cf/websocket 200 22ms","method":"POST","requestID":"a997c65f004d1f712e02bd2455820a29","responseTime":22,"status":200,"url":"/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9a3d90417ab26f3171b41d4af4d02240","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9a3d90417ab26f3171b41d4af4d02240","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2860faf7-559c-45ec-87f1-4b5cea3182cf? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9a3d90417ab26f3171b41d4af4d02240"} device-1 | {"level":"info","message":"OPTIONS /devices/2860faf7-559c-45ec-87f1-4b5cea3182cf? 200 1ms","method":"OPTIONS","requestID":"9a3d90417ab26f3171b41d4af4d02240","responseTime":1,"status":200,"url":"/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxMX0.HWoZ3zHt9g12xH9FOewLAQlVc5Hpf7FdJSJ4lzA2GNE","level":"info","message":"auth send jwt","requestID":"34c54d21aca6ce6bbed6674e4731d928"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"34c54d21aca6ce6bbed6674e4731d928","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"34c54d21aca6ce6bbed6674e4731d928"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1672,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:51Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1672,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.130328,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:51Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"34c54d21aca6ce6bbed6674e4731d928","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931211,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxMX0.HWoZ3zHt9g12xH9FOewLAQlVc5Hpf7FdJSJ4lzA2GNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"34c54d21aca6ce6bbed6674e4731d928","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2860faf7-559c-45ec-87f1-4b5cea3182cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2860faf7-559c-45ec-87f1-4b5cea3182cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:49.607476967Z"}]},"request_id":"3a4dd5b8-4b16-42f4-9973-a5b6403bbbb4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931211.7189102} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"34c54d21aca6ce6bbed6674e4731d928","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"50ab720c-0b8d-41f1-8a4a-68e0d3c5cc35","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931211.7257543} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"34c54d21aca6ce6bbed6674e4731d928","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2860faf7-559c-45ec-87f1-4b5cea3182cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2860faf7-559c-45ec-87f1-4b5cea3182cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:49.607476967Z"}]},"request_id":"d5c2fe32-0c5c-4035-a71b-32daff44be6e","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931211.7393394} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"34c54d21aca6ce6bbed6674e4731d928","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"34c54d21aca6ce6bbed6674e4731d928"} gateway-1 | {"time_local":"21/Sep/2024:15:06:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/2860faf7-559c-45ec-87f1-4b5cea3182cf? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.043","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"34c54d21aca6ce6bbed6674e4731d928"} device-1 | {"level":"info","message":"PATCH /devices/2860faf7-559c-45ec-87f1-4b5cea3182cf? 200 37ms","method":"PATCH","requestID":"34c54d21aca6ce6bbed6674e4731d928","responseTime":37,"status":200,"url":"/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxMX0.HWoZ3zHt9g12xH9FOewLAQlVc5Hpf7FdJSJ4lzA2GNE","level":"info","message":"auth send jwt","requestID":"aa03ae391d2271ac8340cb44f5442f19"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"aa03ae391d2271ac8340cb44f5442f19","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aa03ae391d2271ac8340cb44f5442f19"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1673,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:51Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1673,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.291815,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"aa03ae391d2271ac8340cb44f5442f19","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931211,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxMX0.HWoZ3zHt9g12xH9FOewLAQlVc5Hpf7FdJSJ4lzA2GNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"aa03ae391d2271ac8340cb44f5442f19","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2860faf7-559c-45ec-87f1-4b5cea3182cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2860faf7-559c-45ec-87f1-4b5cea3182cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:49.607476967Z"}]},"request_id":"8131e0e9-6711-4a20-bd00-3d53356a81ba","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931211.7670076} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"aa03ae391d2271ac8340cb44f5442f19","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aa03ae391d2271ac8340cb44f5442f19"} device-1 | {"level":"info","message":"GET /devices/2860faf7-559c-45ec-87f1-4b5cea3182cf? 200 16ms","method":"GET","requestID":"aa03ae391d2271ac8340cb44f5442f19","responseTime":16,"status":200,"url":"/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf?"} gateway-1 | {"time_local":"21/Sep/2024:15:06:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2860faf7-559c-45ec-87f1-4b5cea3182cf? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"aa03ae391d2271ac8340cb44f5442f19"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxMX0.HWoZ3zHt9g12xH9FOewLAQlVc5Hpf7FdJSJ4lzA2GNE","level":"info","message":"auth send jwt","requestID":"1b5529244ea4815077137a3e6fc87f7d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1b5529244ea4815077137a3e6fc87f7d","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"1b5529244ea4815077137a3e6fc87f7d"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1674,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:51Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1674,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.197302,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1b5529244ea4815077137a3e6fc87f7d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931211,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxMX0.HWoZ3zHt9g12xH9FOewLAQlVc5Hpf7FdJSJ4lzA2GNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1b5529244ea4815077137a3e6fc87f7d","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61b94582-9568-4e6c-bd09-1534f25b2edc"},"level":"info","message":"Attempting to run experiment","requestID":"1b5529244ea4815077137a3e6fc87f7d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61b94582-9568-4e6c-bd09-1534f25b2edc"},"level":"info","message":"Attempting to book experiment","requestID":"1b5529244ea4815077137a3e6fc87f7d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61b94582-9568-4e6c-bd09-1534f25b2edc"},"level":"info","message":"Successfully booked experiment","requestID":"1b5529244ea4815077137a3e6fc87f7d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"21d26c60-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"21d2ba80-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1675,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:51Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1675,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.821595,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:51Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1676,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/769fda1e-7eb4-4ec6-be30-06128f6bde71","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"21d26c60-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/769fda1e-7eb4-4ec6-be30-06128f6bde71","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931211,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxMX0.HWoZ3zHt9g12xH9FOewLAQlVc5Hpf7FdJSJ4lzA2GNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"21d26c60-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1676,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.81255,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"21d2ba80-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931211,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxMX0.HWoZ3zHt9g12xH9FOewLAQlVc5Hpf7FdJSJ4lzA2GNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"21d2ba80-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F769fda1e-7eb4-4ec6-be30-06128f6bde71","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F769fda1e-7eb4-4ec6-be30-06128f6bde71","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:49.560775354Z"}]},"request_id":"fd4fb6d8-03b5-4751-a9fe-3cd8f7830340","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931211.8240948} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"21d26c60-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2860faf7-559c-45ec-87f1-4b5cea3182cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2860faf7-559c-45ec-87f1-4b5cea3182cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:49.607476967Z"}]},"request_id":"545fc4e6-a146-468b-850a-37d1c70de510","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931211.8257313} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"21d2ba80-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"21d26c60-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/769fda1e-7eb4-4ec6-be30-06128f6bde71? 200 17ms","method":"GET","requestID":"21d26c60-782b-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/769fda1e-7eb4-4ec6-be30-06128f6bde71?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"21d2ba80-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/2860faf7-559c-45ec-87f1-4b5cea3182cf? 200 17ms","method":"GET","requestID":"21d2ba80-782b-11ef-88d4-5fea3f61bb98","responseTime":17,"status":200,"url":"/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61b94582-9568-4e6c-bd09-1534f25b2edc"},"level":"info","message":"Setting up experiment","requestID":"1b5529244ea4815077137a3e6fc87f7d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61b94582-9568-4e6c-bd09-1534f25b2edc"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"1b5529244ea4815077137a3e6fc87f7d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61b94582-9568-4e6c-bd09-1534f25b2edc"},"level":"info","message":"Successfully locked booking for experiment","requestID":"1b5529244ea4815077137a3e6fc87f7d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61b94582-9568-4e6c-bd09-1534f25b2edc"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"1b5529244ea4815077137a3e6fc87f7d"} device-1 | {"level":"info","message":"postDevicesByDeviceId called","requestID":"21d838c0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1677,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:51Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1677,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.338249,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:51Z"} authorization-1 | {"action":"instantiate","level":"info","message":"opa_check","object":"device:http://localhost/devices/769fda1e-7eb4-4ec6-be30-06128f6bde71","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"21d838c0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/769fda1e-7eb4-4ec6-be30-06128f6bde71","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931211,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxMX0.HWoZ3zHt9g12xH9FOewLAQlVc5Hpf7FdJSJ4lzA2GNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"21d838c0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe048b23f-87df-4ee9-b3f0-ac09bed9b8fd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"300f5ffa-c80d-499b-9265-cf0656ac9145","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931211.884093} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"848b04e2-1575-4646-906e-f123d4ec38a4","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931211.8843477} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"21d838c0-782b-11ef-88d4-5fea3f61bb98","responseTime":11,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"registering changed-callback for device 'http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd' to 'http://localhost/callbacks/experiment'","requestID":"21d838c0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceId succeeded","requestID":"21d838c0-782b-11ef-88d4-5fea3f61bb98"} authentication-1 | {"level":"info","message":"POST /token 201 27ms","method":"POST","requestID":"21de5340-782b-11ef-bfc5-afee5088086e","responseTime":27,"status":201,"url":"/token"} device-1 | {"level":"info","message":"POST /devices/769fda1e-7eb4-4ec6-be30-06128f6bde71?changedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 71ms","method":"POST","requestID":"21d838c0-782b-11ef-88d4-5fea3f61bb98","responseTime":71,"status":201,"url":"/devices/769fda1e-7eb4-4ec6-be30-06128f6bde71?changedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61b94582-9568-4e6c-bd09-1534f25b2edc"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"1b5529244ea4815077137a3e6fc87f7d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61b94582-9568-4e6c-bd09-1534f25b2edc"},"level":"info","message":"Attempting to update booking for experiment","requestID":"1b5529244ea4815077137a3e6fc87f7d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61b94582-9568-4e6c-bd09-1534f25b2edc"},"level":"info","message":"Successfully updated booking for experiment","requestID":"1b5529244ea4815077137a3e6fc87f7d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61b94582-9568-4e6c-bd09-1534f25b2edc"},"level":"info","message":"Successfully set up experiment","requestID":"1b5529244ea4815077137a3e6fc87f7d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"21eb2480-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"21eb72a0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"21eb99b0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1678,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:51Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1678,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.701681,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:51Z"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Received request.","req_id":1679,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:51Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61b94582-9568-4e6c-bd09-1534f25b2edc"},"level":"info","message":"Successfully running experiment","requestID":"1b5529244ea4815077137a3e6fc87f7d"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"21eb2480-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931211,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxMX0.HWoZ3zHt9g12xH9FOewLAQlVc5Hpf7FdJSJ4lzA2GNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"21eb2480-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34524","level":"info","msg":"Sent response.","req_id":1679,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.68471,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"21eb72a0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931211,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxMX0.HWoZ3zHt9g12xH9FOewLAQlVc5Hpf7FdJSJ4lzA2GNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"21eb72a0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1680,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:51Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1680,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.095569,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:51Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe048b23f-87df-4ee9-b3f0-ac09bed9b8fd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6fea7637-2f40-420e-b453-c6b371cc7468","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931211.9847608} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe048b23f-87df-4ee9-b3f0-ac09bed9b8fd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe048b23f-87df-4ee9-b3f0-ac09bed9b8fd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:51.884045859Z"}]},"request_id":"24504d4b-825a-40c6-b2ed-2ff6cbd29af0","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931211.9866366} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"21eb99b0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"21eb99b0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2860faf7-559c-45ec-87f1-4b5cea3182cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2860faf7-559c-45ec-87f1-4b5cea3182cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:49.607476967Z"}]},"request_id":"ec26fbba-1f84-4aff-8ef1-a1995fba23c7","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931211.9883964} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"21eb2480-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"21eb72a0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F61b94582-9568-4e6c-bd09-1534f25b2edc#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F61b94582-9568-4e6c-bd09-1534f25b2edc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"a41ab38b-0fc6-4f9c-8b0d-4174375c3385","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931211.9942024} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fd7e1bba-2c10-49d2-a7e3-66d5fb26bd52","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931211.9944618} device-1 | {"data":{"error":"MissingEntityError","message":"Could not find websocket connection for device e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","method":"POST","stack":"MissingEntityError: Could not find websocket connection for device e048b23f-87df-4ee9-b3f0-ac09bed9b8fd\n at Object.postDevicesByDeviceIdSignaling (file:///usr/local/lib/node_modules/@crosslab/service-device/app/operations/devices/device/signaling/post.js:44:15)\n at async file:///usr/local/lib/node_modules/@crosslab/service-device/app/generated/routes.js:276:28","status":404,"url":"/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd/signaling"},"level":"error","message":"An error occurred during the handling of a request","requestID":"21eb99b0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd/signaling 404 16ms","method":"POST","requestID":"21eb99b0-782b-11ef-88d4-5fea3f61bb98","responseTime":16,"status":404,"url":"/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"1b5529244ea4815077137a3e6fc87f7d","responseTime":12,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"21eb2480-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd? 200 20ms","method":"GET","requestID":"21eb2480-782b-11ef-88d4-5fea3f61bb98","responseTime":20,"status":200,"url":"/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd?"} experiment-1 | {"data":{"response":{"body":{"error":"MissingEntityError","message":"Could not find websocket connection for device e048b23f-87df-4ee9-b3f0-ac09bed9b8fd"},"status":404}},"level":"error","message":"Could not send status-update message","requestID":"1b5529244ea4815077137a3e6fc87f7d"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"21eb72a0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/2860faf7-559c-45ec-87f1-4b5cea3182cf? 200 19ms","method":"GET","requestID":"21eb72a0-782b-11ef-88d4-5fea3f61bb98","responseTime":19,"status":200,"url":"/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"21ee7fe0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1681,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:52Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2860faf7-559c-45ec-87f1-4b5cea3182cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bb93813c-a31c-4e00-b72b-645d9a346814","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931212.0031044} experiment-1 | {"data":{"experiment":"http://localhost/experiments/61b94582-9568-4e6c-bd09-1534f25b2edc","user":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"1b5529244ea4815077137a3e6fc87f7d"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1681,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.278307,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:52Z"} gateway-1 | {"time_local":"21/Sep/2024:15:06:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1108","request_time":"0.230","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1b5529244ea4815077137a3e6fc87f7d"} experiment-1 | {"level":"info","message":"POST /experiments? 201 223ms","method":"POST","requestID":"1b5529244ea4815077137a3e6fc87f7d","responseTime":223,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"21ee7fe0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"21ee7fe0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"21ee7fe0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/2860faf7-559c-45ec-87f1-4b5cea3182cf/signaling 200 9ms","method":"POST","requestID":"21ee7fe0-782b-11ef-88d4-5fea3f61bb98","responseTime":9,"status":200,"url":"/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e8d4482eb16ec3474c75d6ff1369be88","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e8d4482eb16ec3474c75d6ff1369be88","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e8d4482eb16ec3474c75d6ff1369be88"} device-1 | {"level":"info","message":"OPTIONS /devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd/websocket 200 1ms","method":"OPTIONS","requestID":"e8d4482eb16ec3474c75d6ff1369be88","responseTime":1,"status":200,"url":"/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IkhlSDJfWFlpSFBmcjFLZFl4SDBWd1ZFQUVuV2x1OEpBUHNTWkZnbDlYRk5XOW9hNlN4cWl2d0k0b1dXMGdzSDl0OVIyMEp5YjFmMzh4NmwwdVI0aUtBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxNH0._urAkr3DNi0d2REr-df9pUAuQpkPcq_eu8Ct4TPQZrw","level":"info","message":"auth send jwt","requestID":"13a5d028bbcfc1a68a60da8c742a46c2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"13a5d028bbcfc1a68a60da8c742a46c2","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"13a5d028bbcfc1a68a60da8c742a46c2"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1682,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:54Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1682,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.220143,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"13a5d028bbcfc1a68a60da8c742a46c2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","object_type":"device","payload":{"admin":true,"edgeToken":"HeH2_XYiHPfr1KdYxH0VwVEAEnWlu8JAPsSZFgl9XFNW9oa6SxqivwI4oWW0gsH9t9R20Jyb1f38x6l0uR4iKA","iat":1726931214,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IkhlSDJfWFlpSFBmcjFLZFl4SDBWd1ZFQUVuV2x1OEpBUHNTWkZnbDlYRk5XOW9hNlN4cWl2d0k0b1dXMGdzSDl0OVIyMEp5YjFmMzh4NmwwdVI0aUtBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxNH0._urAkr3DNi0d2REr-df9pUAuQpkPcq_eu8Ct4TPQZrw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"13a5d028bbcfc1a68a60da8c742a46c2","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"13a5d028bbcfc1a68a60da8c742a46c2"} gateway-1 | {"time_local":"21/Sep/2024:15:06:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"13a5d028bbcfc1a68a60da8c742a46c2"} device-1 | {"level":"info","message":"POST /devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd/websocket 200 20ms","method":"POST","requestID":"13a5d028bbcfc1a68a60da8c742a46c2","responseTime":20,"status":200,"url":"/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd/websocket"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"aa573c20d291c46cfa6789d1657a61e9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"aa573c20d291c46cfa6789d1657a61e9","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","device":{"announcedAvailability":[],"codeUrl":"http://localhost/cloud_instantiable_device","connected":true,"description":"A JS test device","devices":[],"instantiateUrl":"http://localhost/edge_instantiable_device","isPublic":true,"name":"JS Device 1","services":[],"type":"device","url":"http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"aa573c20d291c46cfa6789d1657a61e9"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"69af3e4574a2f89895610a79390190ae","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"69af3e4574a2f89895610a79390190ae","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"21/Sep/2024:15:06:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"69af3e4574a2f89895610a79390190ae"} device-1 | {"level":"info","message":"OPTIONS /devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd? 200 1ms","method":"OPTIONS","requestID":"69af3e4574a2f89895610a79390190ae","responseTime":1,"status":200,"url":"/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd?"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 27ms","method":"POST","requestID":"aa573c20d291c46cfa6789d1657a61e9","responseTime":27,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.031","http_referrer":"","http_user_agent":"node-fetch","requestID":"aa573c20d291c46cfa6789d1657a61e9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IkhlSDJfWFlpSFBmcjFLZFl4SDBWd1ZFQUVuV2x1OEpBUHNTWkZnbDlYRk5XOW9hNlN4cWl2d0k0b1dXMGdzSDl0OVIyMEp5YjFmMzh4NmwwdVI0aUtBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxNH0._urAkr3DNi0d2REr-df9pUAuQpkPcq_eu8Ct4TPQZrw","level":"info","message":"auth send jwt","requestID":"846e8cbae4cbcc60ed12b108f0713459"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"846e8cbae4cbcc60ed12b108f0713459","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"846e8cbae4cbcc60ed12b108f0713459"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1683,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:54Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1683,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.062627,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"846e8cbae4cbcc60ed12b108f0713459","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","object_type":"device","payload":{"admin":true,"edgeToken":"HeH2_XYiHPfr1KdYxH0VwVEAEnWlu8JAPsSZFgl9XFNW9oa6SxqivwI4oWW0gsH9t9R20Jyb1f38x6l0uR4iKA","iat":1726931214,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IkhlSDJfWFlpSFBmcjFLZFl4SDBWd1ZFQUVuV2x1OEpBUHNTWkZnbDlYRk5XOW9hNlN4cWl2d0k0b1dXMGdzSDl0OVIyMEp5YjFmMzh4NmwwdVI0aUtBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxNH0._urAkr3DNi0d2REr-df9pUAuQpkPcq_eu8Ct4TPQZrw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"846e8cbae4cbcc60ed12b108f0713459","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe048b23f-87df-4ee9-b3f0-ac09bed9b8fd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe048b23f-87df-4ee9-b3f0-ac09bed9b8fd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:51.884045859Z"}]},"request_id":"95ee966e-80d0-4043-aee6-1abc1d81d104","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931214.1220653} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"846e8cbae4cbcc60ed12b108f0713459","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"52d9891c-ac65-48f7-b37e-4bc8d8f9f5f2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931214.1290164} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"846e8cbae4cbcc60ed12b108f0713459","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe048b23f-87df-4ee9-b3f0-ac09bed9b8fd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe048b23f-87df-4ee9-b3f0-ac09bed9b8fd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:51.884045859Z"}]},"request_id":"54191c3b-6f4c-40d9-a70d-04f0757294bf","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931214.1406026} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"846e8cbae4cbcc60ed12b108f0713459","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd' to 'http://localhost/callbacks/experiment'","requestID":"846e8cbae4cbcc60ed12b108f0713459"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"846e8cbae4cbcc60ed12b108f0713459"} gateway-1 | {"time_local":"21/Sep/2024:15:06:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.041","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"846e8cbae4cbcc60ed12b108f0713459"} device-1 | {"level":"info","message":"PATCH /devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd? 200 35ms","method":"PATCH","requestID":"846e8cbae4cbcc60ed12b108f0713459","responseTime":35,"status":200,"url":"/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"712f4f875d79a5afe866fd8d873b5091","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"712f4f875d79a5afe866fd8d873b5091","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","device":{"announcedAvailability":[],"codeUrl":"http://localhost/cloud_instantiable_device","connected":true,"description":"A JS test device","devices":[],"instantiateUrl":"http://localhost/edge_instantiable_device","isPublic":true,"name":"JS Device 1","services":[{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]}],"type":"device","url":"http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"712f4f875d79a5afe866fd8d873b5091"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"712f4f875d79a5afe866fd8d873b5091","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"712f4f875d79a5afe866fd8d873b5091"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxNH0.gs-2-NeK7OJl4WTmTbRuBTpsL88haf0MZhGMTQ2umWk","level":"info","message":"auth send jwt","requestID":"1a303c11a87aed574cd2f2df7ef55b09"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1a303c11a87aed574cd2f2df7ef55b09","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1a303c11a87aed574cd2f2df7ef55b09"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1684,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:54Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1684,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.243148,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"1a303c11a87aed574cd2f2df7ef55b09","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931214,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxNH0.gs-2-NeK7OJl4WTmTbRuBTpsL88haf0MZhGMTQ2umWk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1a303c11a87aed574cd2f2df7ef55b09","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe048b23f-87df-4ee9-b3f0-ac09bed9b8fd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe048b23f-87df-4ee9-b3f0-ac09bed9b8fd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:51.884045859Z"}]},"request_id":"03e883dc-f45b-49ce-bbd9-956b784dd54f","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931214.1713998} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1a303c11a87aed574cd2f2df7ef55b09","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1a303c11a87aed574cd2f2df7ef55b09"} gateway-1 | {"time_local":"21/Sep/2024:15:06:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1a303c11a87aed574cd2f2df7ef55b09"} device-1 | {"level":"info","message":"GET /devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd? 200 16ms","method":"GET","requestID":"1a303c11a87aed574cd2f2df7ef55b09","responseTime":16,"status":200,"url":"/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxNH0.gs-2-NeK7OJl4WTmTbRuBTpsL88haf0MZhGMTQ2umWk","level":"info","message":"auth send jwt","requestID":"6672533235a0ea62e028fc5c39c104f9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6672533235a0ea62e028fc5c39c104f9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6672533235a0ea62e028fc5c39c104f9"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1685,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:54Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1685,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.331653,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"6672533235a0ea62e028fc5c39c104f9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931214,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxNH0.gs-2-NeK7OJl4WTmTbRuBTpsL88haf0MZhGMTQ2umWk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6672533235a0ea62e028fc5c39c104f9","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2860faf7-559c-45ec-87f1-4b5cea3182cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2860faf7-559c-45ec-87f1-4b5cea3182cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:49.607476967Z"}]},"request_id":"c1a9cd9a-67f8-4b2b-b366-c4a874615407","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931214.194165} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6672533235a0ea62e028fc5c39c104f9","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6672533235a0ea62e028fc5c39c104f9"} gateway-1 | {"time_local":"21/Sep/2024:15:06:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2860faf7-559c-45ec-87f1-4b5cea3182cf? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6672533235a0ea62e028fc5c39c104f9"} device-1 | {"level":"info","message":"GET /devices/2860faf7-559c-45ec-87f1-4b5cea3182cf? 200 16ms","method":"GET","requestID":"6672533235a0ea62e028fc5c39c104f9","responseTime":16,"status":200,"url":"/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"24ea33b0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"24eaa8e0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1686,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1686,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.210904,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"24ea33b0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931211,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxMX0.HWoZ3zHt9g12xH9FOewLAQlVc5Hpf7FdJSJ4lzA2GNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"24ea33b0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60904","level":"info","msg":"Received request.","req_id":1687,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"client_addr":"127.0.0.1:60904","level":"info","msg":"Sent response.","req_id":1687,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.506643,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"24eaa8e0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931211,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxMX0.HWoZ3zHt9g12xH9FOewLAQlVc5Hpf7FdJSJ4lzA2GNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"24eaa8e0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe048b23f-87df-4ee9-b3f0-ac09bed9b8fd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe048b23f-87df-4ee9-b3f0-ac09bed9b8fd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:51.884045859Z"}]},"request_id":"943cfc4b-4f96-4531-ac89-c8d522ef1e7d","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931217.0177891} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2860faf7-559c-45ec-87f1-4b5cea3182cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2860faf7-559c-45ec-87f1-4b5cea3182cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:49.607476967Z"}]},"request_id":"8dac4061-0e96-4676-8dd6-4685bbca8f55","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931217.0190415} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"24ea33b0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"24eaa8e0-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"24ea33b0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd? 200 30ms","method":"GET","requestID":"24ea33b0-782b-11ef-88d4-5fea3f61bb98","responseTime":30,"status":200,"url":"/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"24eaa8e0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/2860faf7-559c-45ec-87f1-4b5cea3182cf? 200 29ms","method":"GET","requestID":"24eaa8e0-782b-11ef-88d4-5fea3f61bb98","responseTime":29,"status":200,"url":"/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"24ef8ae0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1688,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe048b23f-87df-4ee9-b3f0-ac09bed9b8fd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b0cca7fa-95e7-47e0-b8af-db15da7a35da","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931217.0450964} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1688,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.086454,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"24ef8ae0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"24ef8ae0-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"24ef8ae0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd/signaling 200 14ms","method":"POST","requestID":"24ef8ae0-782b-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"24f24a00-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1689,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2860faf7-559c-45ec-87f1-4b5cea3182cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a4ddddbb-e484-41f1-a0c0-f2961be25d16","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931217.062702} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1689,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.839967,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"24f24a00-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"24f24a00-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"24f24a00-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/2860faf7-559c-45ec-87f1-4b5cea3182cf/signaling 200 14ms","method":"POST","requestID":"24f24a00-782b-11ef-88d4-5fea3f61bb98","responseTime":14,"status":200,"url":"/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61b94582-9568-4e6c-bd09-1534f25b2edc"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"1b5529244ea4815077137a3e6fc87f7d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"24f4bb00-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"24f50920-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1690,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1690,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.111865,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"client_addr":"127.0.0.1:60904","level":"info","msg":"Received request.","req_id":1691,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"24f4bb00-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931211,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxMX0.HWoZ3zHt9g12xH9FOewLAQlVc5Hpf7FdJSJ4lzA2GNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"24f4bb00-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60904","level":"info","msg":"Sent response.","req_id":1691,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.11707,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"24f50920-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931211,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxMX0.HWoZ3zHt9g12xH9FOewLAQlVc5Hpf7FdJSJ4lzA2GNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"24f50920-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe048b23f-87df-4ee9-b3f0-ac09bed9b8fd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe048b23f-87df-4ee9-b3f0-ac09bed9b8fd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:51.884045859Z"}]},"request_id":"8f37bc1a-6de5-4f3f-9ceb-b2efd82b607b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931217.084462} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"24f4bb00-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2860faf7-559c-45ec-87f1-4b5cea3182cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2860faf7-559c-45ec-87f1-4b5cea3182cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"},"timestamp":"2024-09-21T15:06:49.607476967Z"}]},"request_id":"7b4e5210-88d5-4aca-b7ce-ac72f6c1207b","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931217.0857117} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"24f50920-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"24f4bb00-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd? 200 22ms","method":"GET","requestID":"24f4bb00-782b-11ef-88d4-5fea3f61bb98","responseTime":22,"status":200,"url":"/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"24f50920-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /devices/2860faf7-559c-45ec-87f1-4b5cea3182cf? 200 21ms","method":"GET","requestID":"24f50920-782b-11ef-88d4-5fea3f61bb98","responseTime":21,"status":200,"url":"/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61b94582-9568-4e6c-bd09-1534f25b2edc"},"level":"info","message":"Building connection plan","requestID":"1b5529244ea4815077137a3e6fc87f7d"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"63e06dcc-3a4f-432c-8973-c5b284a9db89"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"a108f86b-3dd3-4c87-8423-9864b8e3d444"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"85c74859-1d57-47a2-8bfa-3426a2a8e9d1"}]},"level":"info","message":"Built pairwise service configurations","requestID":"1b5529244ea4815077137a3e6fc87f7d"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"1b5529244ea4815077137a3e6fc87f7d"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"24f8b2a0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1692,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1692,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.746232,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"24f8b2a0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931211,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxMX0.HWoZ3zHt9g12xH9FOewLAQlVc5Hpf7FdJSJ4lzA2GNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"24f8b2a0-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]}},"raw_response":{},"request_id":"3ac593b6-b3f0-44a9-bdc4-c2a1aa1bd238","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931217.112726} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"de1c7b6c-770e-4ad5-9010-58962d137922","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931217.113247} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"24f8b2a0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"24f8b2a0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"24f8b2a0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/c3e7db21-07b2-4192-a804-8debd8443904'","requestID":"24f8b2a0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/c3e7db21-07b2-4192-a804-8debd8443904'","requestID":"24f8b2a0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"24f8b2a0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 34ms","method":"POST","requestID":"24f8b2a0-782b-11ef-88d4-5fea3f61bb98","responseTime":34,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"24f8b2a0-782b-11ef-88d4-5fea3f61bb98"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61b94582-9568-4e6c-bd09-1534f25b2edc"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"1b5529244ea4815077137a3e6fc87f7d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"25029db0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1693,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe048b23f-87df-4ee9-b3f0-ac09bed9b8fd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"50101a52-58f0-44f8-b793-4eb93c21384a","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931217.1677248} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1693,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.61351,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"25029db0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"25029db0-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"25029db0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd/signaling 200 10ms","method":"POST","requestID":"25029db0-782b-11ef-88d4-5fea3f61bb98","responseTime":10,"status":200,"url":"/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd/signaling"} device-1 | {"device":"e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"25047270-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1694,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:57Z"} device-1 | {"device":"2860faf7-559c-45ec-87f1-4b5cea3182cf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"2860faf7-559c-45ec-87f1-4b5cea3182cf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2860faf7-559c-45ec-87f1-4b5cea3182cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"41b5968a-68d8-4882-9f59-ac5dfab76ede","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931217.1817827} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1694,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.986193,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"25047270-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"25047270-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"25047270-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/2860faf7-559c-45ec-87f1-4b5cea3182cf/signaling 200 13ms","method":"POST","requestID":"25047270-782b-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 4932718572981619139 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:oHEw\r\na=ice-pwd:h60FpM2/Il1tPcs+YPbH6rHW\r\na=ice-options:trickle\r\na=fingerprint:sha-256 BE:91:B7:18:27:86:94:1E:BA:4A:97:97:5F:93:48:58:2C:B3:FB:DB:CA:05:1D:62:77:FE:32:0B:C1:61:3B:C2\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"2860faf7-559c-45ec-87f1-4b5cea3182cf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 661593059031262170 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:CLcE\r\na=ice-pwd:PObbbIzVUVW1Kvp4NkThvnCh\r\na=ice-options:trickle\r\na=fingerprint:sha-256 BC:45:A1:60:BB:AD:0C:87:2F:DE:E3:6A:0A:D5:74:68:8F:62:14:47:D4:2E:A4:D6:56:3B:FF:EF:BD:E1:C0:2B\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2618787230 1 udp 2113937151 e2c589b5-4161-45b2-b6fc-c870f161c9ba.local 42252 typ host generation 0 ufrag CLcE network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:406515681 1 udp 1677729535 141.24.211.56 42252 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag CLcE network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd'"} device-1 | {"content":{"candidate":"candidate:3544022909 1 udp 2113937151 ce76b928-6710-49ea-a3cd-78543f3af34a.local 34538 typ host generation 0 ufrag oHEw network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2860faf7-559c-45ec-87f1-4b5cea3182cf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1075240558 1 udp 1677729535 141.24.211.56 34538 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag oHEw network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2860faf7-559c-45ec-87f1-4b5cea3182cf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"2860faf7-559c-45ec-87f1-4b5cea3182cf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf'"} device-1 | {"device":"e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"2860faf7-559c-45ec-87f1-4b5cea3182cf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c3e7db21-07b2-4192-a804-8debd8443904' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c3e7db21-07b2-4192-a804-8debd8443904","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"2860faf7-559c-45ec-87f1-4b5cea3182cf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/c3e7db21-07b2-4192-a804-8debd8443904"}}},"level":"info","message":"received a callback","requestID":"6d3736217b125c15855fe910d3c1b0bc"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6d3736217b125c15855fe910d3c1b0bc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"6d3736217b125c15855fe910d3c1b0bc","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"6d3736217b125c15855fe910d3c1b0bc","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"6d3736217b125c15855fe910d3c1b0bc"} device-1 | {"device":"e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"c3e7db21-07b2-4192-a804-8debd8443904","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"c3e7db21-07b2-4192-a804-8debd8443904","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c3e7db21-07b2-4192-a804-8debd8443904' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c3e7db21-07b2-4192-a804-8debd8443904","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b7328e1b528a662efb2f467d260385f5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b7328e1b528a662efb2f467d260385f5","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/c3e7db21-07b2-4192-a804-8debd8443904"}}},"level":"info","message":"received a callback","requestID":"b7328e1b528a662efb2f467d260385f5"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"250fe420-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1695,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc3e7db21-07b2-4192-a804-8debd8443904","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bcd00bc1-e94c-47ec-a8d9-8aa497468533","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931217.2546897} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1695,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.087407,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c3e7db21-07b2-4192-a804-8debd8443904","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"250fe420-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/c3e7db21-07b2-4192-a804-8debd8443904","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"250fe420-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"250fe420-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"GET /peerconnections/c3e7db21-07b2-4192-a804-8debd8443904 200 7ms","method":"GET","requestID":"250fe420-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/peerconnections/c3e7db21-07b2-4192-a804-8debd8443904"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 29ms","method":"POST","requestID":"b7328e1b528a662efb2f467d260385f5","responseTime":29,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.031","http_referrer":"","http_user_agent":"node-fetch","requestID":"b7328e1b528a662efb2f467d260385f5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2513b4b0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1696,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe048b23f-87df-4ee9-b3f0-ac09bed9b8fd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6eb33faa-102c-4abb-9889-5178fe8b4b21","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931217.279628} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1696,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.132979,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"2513b4b0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2513b4b0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2513b4b0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd/signaling 200 8ms","method":"POST","requestID":"2513b4b0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"25153b50-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1697,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2860faf7-559c-45ec-87f1-4b5cea3182cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b098788d-6d62-4be6-84c1-745a33d770a2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931217.289304} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1697,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.14708,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"25153b50-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"25153b50-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"25153b50-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/2860faf7-559c-45ec-87f1-4b5cea3182cf/signaling 200 8ms","method":"POST","requestID":"25153b50-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxN30.qZw_3zReI70q1xCeb368vOw8ex8ZXya4dLEn0-SI_Jc","level":"info","message":"auth send jwt","requestID":"7b51cab8acc785b3775bd0c4ddca6feb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7b51cab8acc785b3775bd0c4ddca6feb","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/61b94582-9568-4e6c-bd09-1534f25b2edc","requestID":"7b51cab8acc785b3775bd0c4ddca6feb"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1698,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1698,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.843222,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/61b94582-9568-4e6c-bd09-1534f25b2edc","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"7b51cab8acc785b3775bd0c4ddca6feb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/61b94582-9568-4e6c-bd09-1534f25b2edc","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931217,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxN30.qZw_3zReI70q1xCeb368vOw8ex8ZXya4dLEn0-SI_Jc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7b51cab8acc785b3775bd0c4ddca6feb","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/61b94582-9568-4e6c-bd09-1534f25b2edc","requestID":"7b51cab8acc785b3775bd0c4ddca6feb"} gateway-1 | {"time_local":"21/Sep/2024:15:06:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/61b94582-9568-4e6c-bd09-1534f25b2edc HTTP/1.1","status": "200","body_bytes_sent":"1181","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7b51cab8acc785b3775bd0c4ddca6feb"} experiment-1 | {"level":"info","message":"GET /experiments/61b94582-9568-4e6c-bd09-1534f25b2edc 200 13ms","method":"GET","requestID":"7b51cab8acc785b3775bd0c4ddca6feb","responseTime":13,"status":200,"url":"/experiments/61b94582-9568-4e6c-bd09-1534f25b2edc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxN30.qZw_3zReI70q1xCeb368vOw8ex8ZXya4dLEn0-SI_Jc","level":"info","message":"auth send jwt","requestID":"bf1bc35e7c0308a7338475687e744916"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bf1bc35e7c0308a7338475687e744916","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/61b94582-9568-4e6c-bd09-1534f25b2edc","requestID":"bf1bc35e7c0308a7338475687e744916"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1699,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1699,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.85275,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/61b94582-9568-4e6c-bd09-1534f25b2edc","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"bf1bc35e7c0308a7338475687e744916","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"experiment:http://localhost/experiments/61b94582-9568-4e6c-bd09-1534f25b2edc","object_type":"experiment","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931217,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxN30.qZw_3zReI70q1xCeb368vOw8ex8ZXya4dLEn0-SI_Jc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bf1bc35e7c0308a7338475687e744916","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61b94582-9568-4e6c-bd09-1534f25b2edc"},"level":"info","message":"Attempting to finish experiment","requestID":"bf1bc35e7c0308a7338475687e744916"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"252037d0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1700,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1700,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.886347,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c3e7db21-07b2-4192-a804-8debd8443904","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"252037d0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"peerconnection:http://localhost/peerconnections/c3e7db21-07b2-4192-a804-8debd8443904","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931217,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxN30.qZw_3zReI70q1xCeb368vOw8ex8ZXya4dLEn0-SI_Jc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"252037d0-782b-11ef-88d4-5fea3f61bb98","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/c3e7db21-07b2-4192-a804-8debd8443904","device":"e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/c3e7db21-07b2-4192-a804-8debd8443904","device":"2860faf7-559c-45ec-87f1-4b5cea3182cf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c3e7db21-07b2-4192-a804-8debd8443904' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/c3e7db21-07b2-4192-a804-8debd8443904' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c3e7db21-07b2-4192-a804-8debd8443904","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc3e7db21-07b2-4192-a804-8debd8443904': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc3e7db21-07b2-4192-a804-8debd8443904","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"77bfd5b5-f9bb-486b-a4a8-d89aeffdb617","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931217.3761508} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f2d6b6d6-741e-44ca-a142-25cb6f94e1b2","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931217.3763585} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"252037d0-782b-11ef-88d4-5fea3f61bb98","responseTime":6,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ce2705faeb14e57bf8e3d8b57299222e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ce2705faeb14e57bf8e3d8b57299222e","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c3e7db21-07b2-4192-a804-8debd8443904"}}},"level":"info","message":"received a callback","requestID":"ce2705faeb14e57bf8e3d8b57299222e"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4d2cec1c7b5f051a875264a24394ddef","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4d2cec1c7b5f051a875264a24394ddef","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"252037d0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /peerconnections/c3e7db21-07b2-4192-a804-8debd8443904 204 26ms","method":"DELETE","requestID":"252037d0-782b-11ef-88d4-5fea3f61bb98","responseTime":26,"status":204,"url":"/peerconnections/c3e7db21-07b2-4192-a804-8debd8443904"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c3e7db21-07b2-4192-a804-8debd8443904"}}},"level":"info","message":"received a callback","requestID":"4d2cec1c7b5f051a875264a24394ddef"} device-1 | {"level":"info","message":"deleteDevicesByDeviceId called","requestID":"25247d90-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1701,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1701,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.919553,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"device:http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"25247d90-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f","object":"device:http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","object_type":"device","payload":{"admin":true,"edgeToken":"KCxNf_ELCRr6SKZZwxLM50U9E-UnR2-B2QzQN3a_bn2Ssl15fiEgqKlGUwWHueiH9GJ5o95mZr98uH4Rs6sYhA","iat":1726931217,"sub":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f","subject_alt":"http://localhost/users/eb08177b-aa54-46e8-970d-bb12885d044f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2ViMDgxNzdiLWFhNTQtNDZlOC05NzBkLWJiMTI4ODVkMDQ0ZiIsImVkZ2VUb2tlbiI6IktDeE5mX0VMQ1JyNlNLWlp3eExNNTBVOUUtVW5SMi1CMlF6UU4zYV9ibjJTc2wxNWZpRWdxS2xHVXdXSHVlaUg5R0o1bzk1bVpyOTh1SDRSczZzWWhBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNjkzMTIxN30.qZw_3zReI70q1xCeb368vOw8ex8ZXya4dLEn0-SI_Jc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"25247d90-782b-11ef-88d4-5fea3f61bb98","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf'"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'device:http%3A%2F%2Flocalhost%2Fdevices%2Fe048b23f-87df-4ee9-b3f0-ac09bed9b8fd': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe048b23f-87df-4ee9-b3f0-ac09bed9b8fd","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"82398f2e-8a14-423a-b6df-ebb13456fffc","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931217.4009354} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"310aae34-d6fe-47c0-93ae-bd47addbc4bf","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931217.4012477} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"25247d90-782b-11ef-88d4-5fea3f61bb98","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"deleteDevicesByDeviceId succeeded","requestID":"25247d90-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"DELETE /devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd 204 29ms","method":"DELETE","requestID":"25247d90-782b-11ef-88d4-5fea3f61bb98","responseTime":29,"status":204,"url":"/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/61b94582-9568-4e6c-bd09-1534f25b2edc"},"level":"info","message":"Successfully finished experiment","requestID":"bf1bc35e7c0308a7338475687e744916"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"252c6cd0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1702,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe048b23f-87df-4ee9-b3f0-ac09bed9b8fd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7368e4e5-fb61-4fc9-9308-f15631772529","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931217.4436731} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1702,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.30904,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"252c6cd0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"252c6cd0-782b-11ef-88d4-5fea3f61bb98","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"data":{"error":"MissingEntityError","message":"The requested Device Overview does not exist in the database","method":"POST","stack":"MissingEntityError: The requested Device Overview does not exist in the database\n at DeviceOverviewRepository.findOneOrFail (file:///usr/local/lib/node_modules/@crosslab/service-common/lib/esm/database/abstractRepository.js:63:19)\n at async DeviceRepository.findOneOrFail (file:///usr/local/lib/node_modules/@crosslab/service-device/app/database/repositories/device.js:155:32)\n at async Object.postDevicesByDeviceIdSignaling (file:///usr/local/lib/node_modules/@crosslab/service-device/app/operations/devices/device/signaling/post.js:22:25)\n at async file:///usr/local/lib/node_modules/@crosslab/service-device/app/generated/routes.js:276:28","status":404,"url":"/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd/signaling"},"level":"error","message":"An error occurred during the handling of a request","requestID":"252c6cd0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd/signaling 404 13ms","method":"POST","requestID":"252c6cd0-782b-11ef-88d4-5fea3f61bb98","responseTime":13,"status":404,"url":"/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd/signaling"} experiment-1 | {"data":{"response":{"body":{"error":"MissingEntityError","message":"The requested Device Overview does not exist in the database"},"status":404}},"level":"error","message":"Could not send status-update message","requestID":"bf1bc35e7c0308a7338475687e744916"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F61b94582-9568-4e6c-bd09-1534f25b2edc': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F61b94582-9568-4e6c-bd09-1534f25b2edc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Feb08177b-aa54-46e8-970d-bb12885d044f"}]},"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","writes":null},"raw_response":{},"request_id":"c2180739-eb8b-4a23-b1a6-3dd6c8151cc9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931217.4524148} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81"},"raw_response":{"authorization_model":{"id":"01J8AHRMJ8DQZJ24HYGG684C7V","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7dfbf189-f66f-47f6-9bf1-0908d100b40c","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931217.452776} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"252eddd0-782b-11ef-88d4-5fea3f61bb98"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"bf1bc35e7c0308a7338475687e744916","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Received request.","req_id":1703,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:42308","raw_request":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","contextual_tuples":null,"store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2860faf7-559c-45ec-87f1-4b5cea3182cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"27221948-44fc-4b88-9864-eb0e359637a9","store_id":"01J8AHRMGHV6NRN7XCT86G5Q81","subsystem":"openfga","timestamp":1726931217.4596326} authorization-1 | {"client_addr":"127.0.0.1:46892","level":"info","msg":"Sent response.","req_id":1703,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.732129,"resp_status":200,"subsystem":"opa","time":"2024-09-21T15:06:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf","openfga":{"authorization_model_id":"01J8AHRMJ8DQZJ24HYGG684C7V","store":"01J8AHRMGHV6NRN7XCT86G5Q81"},"requestID":"252eddd0-782b-11ef-88d4-5fea3f61bb98","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"252eddd0-782b-11ef-88d4-5fea3f61bb98","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"252eddd0-782b-11ef-88d4-5fea3f61bb98"} device-1 | {"level":"info","message":"POST /devices/2860faf7-559c-45ec-87f1-4b5cea3182cf/signaling 200 13ms","method":"POST","requestID":"252eddd0-782b-11ef-88d4-5fea3f61bb98","responseTime":13,"status":200,"url":"/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/61b94582-9568-4e6c-bd09-1534f25b2edc","requestID":"bf1bc35e7c0308a7338475687e744916"} gateway-1 | {"time_local":"21/Sep/2024:15:06:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/61b94582-9568-4e6c-bd09-1534f25b2edc HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.187","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bf1bc35e7c0308a7338475687e744916"} experiment-1 | {"level":"info","message":"DELETE /experiments/61b94582-9568-4e6c-bd09-1534f25b2edc 204 184ms","method":"DELETE","requestID":"bf1bc35e7c0308a7338475687e744916","responseTime":184,"status":204,"url":"/experiments/61b94582-9568-4e6c-bd09-1534f25b2edc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 147ms","method":"POST","requestID":"ce2705faeb14e57bf8e3d8b57299222e","responseTime":147,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.150","http_referrer":"","http_user_agent":"node-fetch","requestID":"ce2705faeb14e57bf8e3d8b57299222e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 144ms","method":"POST","requestID":"4d2cec1c7b5f051a875264a24394ddef","responseTime":144,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.148","http_referrer":"","http_user_agent":"node-fetch","requestID":"4d2cec1c7b5f051a875264a24394ddef"} gateway-1 | {"time_local":"21/Sep/2024:15:06:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2838","request_time":"3.481","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"bf7500d9f7f044cdbfaafe8dcd3215c5"} gateway-1 | {"time_local":"21/Sep/2024:15:06:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3077","request_time":"5.879","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2a2f98ed8502f8f24caf30cb8bc58a5a"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/2860faf7-559c-45ec-87f1-4b5cea3182cf' closed"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd' closed"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3e0e4d518267bb42a9d269a409d90b1f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3e0e4d518267bb42a9d269a409d90b1f","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","device":{"announcedAvailability":[],"codeUrl":"http://localhost/cloud_instantiable_device","connected":false,"description":"A JS test device","devices":[],"instantiateUrl":"http://localhost/edge_instantiable_device","isPublic":true,"name":"JS Device 1","services":[],"type":"device","url":"http://localhost/devices/e048b23f-87df-4ee9-b3f0-ac09bed9b8fd"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"3e0e4d518267bb42a9d269a409d90b1f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 410 3ms","method":"POST","requestID":"3e0e4d518267bb42a9d269a409d90b1f","responseTime":3,"status":410,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"21/Sep/2024:15:06:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "410","body_bytes_sent":"5","request_time":"0.005","http_referrer":"","http_user_agent":"node-fetch","requestID":"3e0e4d518267bb42a9d269a409d90b1f"} federation-1 exited with code 0 authentication-1 exited with code 0 forwarding-1 exited with code 0 experiment-1 exited with code 0 device-1 exited with code 0 authorization-1 exited with code 0 gateway-1 exited with code 0